一种微服务网关优化方法、装置及存储介质制造方法及图纸

技术编号:20855512 阅读:32 留言:0更新日期:2019-04-13 10:52
本发明专利技术实施例公开了一种微服务网关优化方法、装置及存储介质,属于微服务领域。该方法包括:为每个服务器部署资源嗅探器,定时收集各服务器资源占用信息;根据服务注册信息和各服务器资源占用信息,为用户的服务请求分配服务器;判断各服务器是否超过预设的负载限度,扩充超过负载限度的服务器;通过类树形数据结构存储用户的服务请求与分配的服务器地址,根据对应关系,将用户的服务请求发送到服务器。通过该技术方案,保障服务资源的合理分配,可基于动态的服务器资源实现负载均衡。

【技术实现步骤摘要】
一种微服务网关优化方法、装置及存储介质
本专利技术涉及微服务领域,尤其涉及一种微服务网关优化方法、装置及存储介质。
技术介绍
微服务网关是一种将底层服务的复杂细节屏蔽,对外提供简单统一调用方式的软件装置。一般在客户端发送服务请求后,首先会进而网关,再由网关路由转发将请求分配到具体的服务端,这在实现AJAX跨域访问上有着广泛的应用。在路由转发过程中会使用到具体的路由算法,如轮询、哈希、权重分配等多种方式,这些算法基于固定的规则,进行服务分配。由于服务端资源是动态变化的,在高并发情况下,容易将大量请求分配到资源不充足的服务器上,难以实现资源的最大化利用。
技术实现思路
有鉴于此,本专利技术实施例提供了一种微服务网关优化方法、装置及存储介质,以基于服务端资源的动态变化,解决服务器资源难以实现最大化利用的问题,保证负载均衡。结合本专利技术实施例的第一方面,提供了一种微服务网关优化方法,包括:为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息;根据服务注册信息和各服务器资源占用信息,为用户的服务请求分配服务器;预先判断各服务器已分配的服务请求是否超过预设的负载限度,为超过负载限度的服务器扩充已注册的服务器;通过类树形数据结构存储用户的服务请求与分配的服务器地址对应关系,根据所述对应关系,将用户的服务请求发送到对应的服务器。结合本专利技术实施例的第二方面,提供了一种微服务网关优化装置,包括:收集模块,用于为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息;分配模块,用于根据服务注册信息和各服务器资源占用信息,为用户的服务请求分配服务器;扩充模块,用于预先判断各服务器已分配的服务请求是否超过预设的负载限度,为超过负载限度的服务器扩充已注册的服务器;存储模块,用于通过类树形数据结构存储用户的服务请求与分配的服务器地址对应关系,根据所述对应关系,将用户的服务请求发送到对应的服务器。结合本专利技术实施例的第三方面,提供了一种装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本专利技术实施例第一方面所述方法的步骤。本专利技术实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本专利技术实施例第一方面提供的所述方法的步骤。本专利技术实施例的第五方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被一个或多个处理器执行时实现本专利技术实施例第一方面提供的所述方法的步骤。本专利技术实施例通过在各服务器上部分资源嗅探器采集服务器资源,再进行资源分配,为负载过大的服务器扩充服务器,并通过类树形结构存储服务对应关系,最后将用户请求发送到对应的服务器。使得网关的服务配置可以根据嗅探器采集的动态资源占用信息进行合理分配,实现服务资源的最大化利用。同时,在服务器负担过大时,实时动态根据其他服务器的资源变化为负担过大的服务器扩充服务器,分担负载,并且结合服务与请求对应关系的类树形的存储,既能方便动态调整服务分配,而且逻辑结构清晰,保障请求的快速分发。附图说明图1是本专利技术实施例一提供的一种微服务网关优化方法的原理示意图;图2是本专利技术实施例二提供的一种微服务网关优化方法的流程图;图3是本专利技术实施例三提供的一种微服务网关优化方法的另一原理示意图;图4是本专利技术实施例四提供的一种微服务网关优化方法的另一流程图;图5是本专利技术实施例五提供的一种类树形结构示意图;图6是本专利技术实施例六提供的一种微服务网关优化装置的结构示意图图7是本专利技术实施例七提供的一种微服务网关优化装置的另一结构示意图;图8是本专利技术实施例八提供的一种终端装置的结构示意图。具体实施方式本专利技术实施例提供了一种微服务网关优化方法、装置及存储介质,用于在微服务中实现服务资源的最大化利用,保证负载均衡。为使得本专利技术的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本专利技术一部分实施例,而非全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。实施例一请参阅图1,本专利技术实施例提供的微服务网关优化方法的原理示意图,包括:本实施应用于微服务网关中,用于接收客户端的服务请求,并转发到后端服务器,还包括权限校验、API监控、限流及日志收集等功能。通过网络连接,在客户端发起用户请求后,用户请求110会传输到微服务网关120,微服务网关120对用户的服务请求进行一系列验证、协议处理、标记、过滤等操作后,登记或记录用户的请求。优选的,微服务网关120对各线路的用户请求110进行安全监控及限流,保证网关安全正常运行。所述服务器130是由多台服务器组成或是服务器集群,服务器130可以为用户提供一种或多种服务,多台服务器拥有相同或不同的硬件资源,在服务器具有不同资源分布时,服务器可提供的服务资源也不相同。在本专利技术实施中,可用服务器130,在分配服务请求前,需要注册服务器的组建名称、IP地址、端口及可用数量等。在网关提供服务前,需要在微服务网关120的注册中心,记录可用服务的地址、端口及资源等信息,所述注册中心的服务注册信息会实时的发生变更。在微服务网关120中,根据已注册的服务器信息以及接收的用户请求,通过算法进行服务分配,存储用户请求与服务器服务地址的对应信息,一般的,可通过k-v键值关联方式进行存储。根据分配后用户服务与服务器地址间的对应关系,将微服务网关120中的用户请求发送的对应的服务器130上,以执行处理用户的服务请求。服务器130相应用户的服务请求后,将响应数据或反馈信息发送给对应的客户端。实施例二在图1的基础上,下面结合图2详述一种微服务网关优化方法的实现流程,包括:S201、为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息;所述服务器是一种提供计算服务的设备,包含有处理器、硬盘、内存等,可以是web服务器、流媒体服务器或数据库服务器等一种或多种类型的服务器,能够针对客户端的用户请求进行数据处理以响应请求。所述资源嗅探器是一种可部署到硬件设备上用于监听硬件资源使用状况的工具软件,在本专利技术实施例中所述资源嗅探器可实时采集服务器资源占用信息,传送到微服务网关,其中,所述服务器资源占用信息可包括内存占用、网络流量占用、磁盘IO使用、端口占用等百分百信息。可选的,创建一个心跳广播,资源嗅探器通过所述心跳广播向每个微服务网关发送心跳消息;若存在微服务网关间隔预设时长未接收到心跳消息,则将未接收到心跳消息的微服务网关从可用列表中删除,并不再向所述微服务网关发送服务请求。可选的,微服务网关定时发送资源汇报命令到资源嗅探器,资源嗅探器接收到命令后,采集当前服务器的资源占用信息,并将所述资源占用信息发送给微服务网关。进一步的,根据所述资源占用信息,评估各服务器使用状态,并动态调整服务请求的落地服务地址。所述落地服务地址为已部署有服务请求的服务器地址,基于实时的服务器资源占用信息及其评估,对已部署服务的服务器调整服务分配,分配原则为:服务器资源越充足,分配的服务本文档来自技高网...

【技术保护点】
1.一种微服务网关优化方法,其特征在于,包括:为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息;根据服务注册信息和各服务器资源占用信息,为用户的服务请求分配服务器;预先判断各服务器已分配的服务请求是否超过预设的负载限度,为超过负载限度的服务器扩充已注册的服务器;通过类树形数据结构存储用户的服务请求与分配的服务器地址对应关系,根据所述对应关系,将用户的服务请求发送到对应的服务器。

【技术特征摘要】
1.一种微服务网关优化方法,其特征在于,包括:为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息;根据服务注册信息和各服务器资源占用信息,为用户的服务请求分配服务器;预先判断各服务器已分配的服务请求是否超过预设的负载限度,为超过负载限度的服务器扩充已注册的服务器;通过类树形数据结构存储用户的服务请求与分配的服务器地址对应关系,根据所述对应关系,将用户的服务请求发送到对应的服务器。2.根据权利要求1所述的方法,其特征在于,所述为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息还包括:创建一个心跳广播,资源嗅探器通过所述心跳广播向每个微服务网关发送心跳消息;若存在微服务网关间隔预设时长未接收到心跳消息,则将未接收到心跳消息的微服务网关从可用列表中删除,并不再向所述微服务网关发送服务请求。3.根据权利要求1所述的方法,其特征在于,所述为每个服务器部署资源嗅探器后,定时通过资源嗅探器收集各服务器资源占用信息具体为:微服务网关定时发送资源汇报命令到资源嗅探器,资源嗅探器接收到命令后,采集当前服务器的资源占用信息,并将所述资源占用信息发送给微服务网关。4.根据权利要求3所述的方法,其特征在于,所述并将所述资源占用信息发送给微服务网关还包括:根据所述资源占用信息,评估各服务器使用状态,并动态调整服务请求的落地服务地址。5.根据权利要求1所述的方法,其特征在于,所述类树形数据结构具体为:在类树形结构中,叶子节点间存在先后关系,根节点与叶子节点间的连线存在权重分配。6.根据权利要求5所述的方法,其特征在于...

【专利技术属性】
技术研发人员:肖源
申请(专利权)人:武汉斗鱼鱼乐网络科技有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1