CN113810443A - 资源管理方法、系统、代理服务器及存储介质 - Google Patents
资源管理方法、系统、代理服务器及存储介质 Download PDFInfo
- Publication number
- CN113810443A CN113810443A CN202010549774.5A CN202010549774A CN113810443A CN 113810443 A CN113810443 A CN 113810443A CN 202010549774 A CN202010549774 A CN 202010549774A CN 113810443 A CN113810443 A CN 113810443A
- Authority
- CN
- China
- Prior art keywords
- server
- micro
- resource
- load balancing
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 claims abstract description 35
- 230000004044 response Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 14
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 abstract description 10
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1033—Signalling gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1063—Application servers providing network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1012—Server selection for load balancing based on compliance of requirements or conditions with available server resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请公开了一种资源管理方法、系统、代理服务器及存储介质,属于通信技术领域,该方法包括:当存在微服务器的资源更新信息时,通过所述微服务器的代理服务器将所述资源更新信息上报给所述负载均衡服务器;通过所述负载均衡服务器将所述资源更新信息广播给各个微服务器对应的代理服务器;通过各个微服务器对应的代理服务器基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态,以基于所述资源使用状态执行负载均衡操作。实现了基于全局资源信息进行全局的负载均衡,提高了实施负载均衡的准确性,以及提高了对资源管理的可靠性和准确性。
Description
技术领域
本申请涉及通信技术领域,具体涉及一种资源管理方法、系统、代理服务器及存储介质。
背景技术
负载均衡是指将负载(工作任务)进行平衡或分摊到多个操作单元上进行运行,例如将负载分摊到文件传输协议(FileTransferProtocol,FTP)服务器、Web服务器(WebServer)、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。在微服务器系统中,每一个微服务器都可以对其他微服务器发起请求,而在有多个请求方的场景下,每一个请求方的微服务器分别获取自身的局部资源信息,并基于自身的局部资源信息独立做负载均衡,这样可能会出现负载不均衡,因此,通过作为请求方的微服务器实现负载均衡的机制,会导致全局的负载不够均衡的结果,降低了负载均衡的准确性。
发明内容
本申请实施例提供一种资源管理方法、系统、代理服务器及存储介质,可以提高实施负载均衡的准确性,以及提高对资源管理的可靠性和准确性。
第一方面,本申请实施例提供了一种资源管理方法,所述资源管理方法应用于资源管理系统,所述资源管理系统包括多个微服务器、每个微服务器对应的代理服务器、以及负载均衡服务器,所述资源管理方法包括:
当存在微服务器的资源更新信息时,通过所述微服务器的代理服务器将所述资源更新信息上报给所述负载均衡服务器;
通过所述负载均衡服务器将所述资源更新信息广播给各个微服务器对应的代理服务器;
通过各个微服务器对应的代理服务器基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态,以基于所述资源使用状态执行负载均衡操作。
第二方面,本申请实施例还提供了一种资源管理方法,所述资源管理方法应用于代理服务器,所述代理服务器为请求方的微服务器对应的代理服务器,所述资源管理方法包括:
当监测到微服务器存在资源更新信息时,将所述资源更新信息上报给所述负载均衡服务器,以及基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态;
根据所述资源使用状态执行负载均衡操作。
第三方面,本申请实施例还提供了一种资源管理系统,所述资源管理系统包括多个微服务器、每个微服务器对应的代理服务器、以及负载均衡服务器,所述负载均衡服务器与各个代理服务器进行通信连接,所述资源管理系统用于执行本申请实施例提供的应用于资源管理系统的任一种资源管理方法。
第四方面,本申请实施例还提供了一种代理服务器,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行本申请实施例提供的应用于代理服务器的任一种资源管理方法。
第五方面,本申请实施例还提供了一种存储介质,用于计算机可读存储,所述储介质用于存储计算机程序,所述计算机程序被处理器加载,以执行本申请实施例提供的任一种资源管理方法。
本申请实施例当存在微服务器的资源更新信息时,可以通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,然后可以通过负载均衡服务器将资源更新信息广播给各个微服务器对应的代理服务器,以便各个代理服务器可以获知各个微服务器的全局资源信息,此时可以通过各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,以使得各个代理服务器可以及时且准确维护每个微服务器的资源使用状态,以基于资源使用状态执行负载均衡操作,从而实现了基于全局资源信息进行全局的负载均衡,提高了实施负载均衡的准确性,以及提高了对资源管理的可靠性和准确性。
附图说明
图1是本申请一个实施例提供的资源管理系统的结构示意图
图2是本申请一个实施例提供的资源管理方法的流程示意图;
图3是本申请另一实施例提供的资源管理方法的流程示意图;
图4是本申请另一实施例提供的资源管理方法的流程示意图;
图5是本申请另一实施例提供的资源管理方法的流程示意图;
图6是本申请另一实施例提供的资源管理方法的流程示意图;
图7是本申请一个实施例提供的代理服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
本申请的实施例提供了一种资源管理方法、系统、代理服务器及存储介质。
请参阅图1,图1是实施本申请实施例提供的资源管理系统的一结构示意图,如图1所示,资源管理系统可以包括多个微服务器、每个微服务器对应的代理服务器、以及负载均衡服务器,其中,每个微服务器与其对应的代理服务器连接,每个代理服务器均与负载均衡服务器连接,例如各个微服务器的代理服务器可以向负载均衡服务器发送注册请求,负载均衡服务器在接收到根据注册请求后,向各个代理服务器返回注册响应,基于注册响应建立负载均衡服务器与每个微服务器的代理服务器之间的连接关系。其中,微服务器、代理服务器、以及负载均衡服务器的类型可以根据实际需要进行灵活设置,具体类型在此处不做限定。
其中,负载均衡服务器可以用于:1)接收资源管理系统中各代理服务器上报的各微服务器的实例的资源使用情况(即资源使用状态),例如连接数、以及请求数等,存储资源管理系统中所有微服务器的实例的资源占用情况;2)在收到上报的资源使用更新事件后,广播给资源管理系统中所有的代理服务器。
所有代理服务器可以用于:1)向负载均衡服务器注册,监听资源管理系统中各个微服务器资源占用情况变化(即资源使用更新)的通知;2)当收到资源占用情况变化的通知以后,将新的资源占用情况保存在本地内存中。
作为接收方的代理服务器可以用于:1)接收方的代理服务器收到请求后,转发请求给与其连接的微服务器(也可以称为本地服务器)之前,将该微服务器的实例当前的资源占用情况上报给负载均衡服务器,然后转发请求给该微服务器的实例,或者,将该微服务器的实例当前的资源占用情况上报给负载均衡服务器,同时转发请求给该微服务器的实例;2)当本地服务器处理完毕请求,返回响应后,接收方的代理服务器将当前的资源占用情况上报给负载均衡服务器,然后向请求方返回响应;3)除了请求处理的开始和结束时刻,在服务处理过程中,本地服务器也可以调用代理服务器的接口,更新本地服务器的资源占用情况,代理服务器将最新的资源占用情况保存在本地,并向负载均衡服务器上报。
作为请求方的代理服务器可以用于:在请求方的微服务器发送请求后,请求方的代理服务器收到请求后,从本地内存获取被请求的微服务器的所有实例的资源占用情况,接合负载均衡策略,选择出接收方的一个服务器的实例,然后转发请求给此接收方的服务器的实例,实现了包括网关和所有的微服务器的实例的全局的负载均衡。
资源占用可以包括:1)代理服务器能够获取的资源消耗,例如当前连接数,这一类信息可以由代理服务器自动获取并上报;2)代理服务器不能获取的,例如微服务器才能估计某一类查询的资源消耗,这一类需要由微服务器发送给代理服务器,然后由代理服务器上报。
需要说明的是,在单体应用演变为资源管理系统(有人可以称为微服务系统)后,进程内的调用变成了进程间的远程调用,对大量的网络连接和请求进行管理和监控,成为了资源管理系统开发中的难题。为了让微服务器从复杂的网络问题(包括负载均衡)中解脱出来,专注于业务开发,服务网格被引入到资源管理系统中,承担了对微服务器的网络通信的管理控制任务。
如图1中,服务网格可以从逻辑上分为数据平面和控制平面,其中,数据平面由一组网络智能代理组成,这些代理(即代理服务器)和每一个微服务器的实例部署在一起。代理服务器拦截了微服务器发送和接收的网络请求,因此这些代理服务器能够接管微服务器之间的网络通信,负责微服务器转发、负载均衡、以及微服务器的实例的性能指标上报等工作。控制平面则负责管理和配置代理服务器,负责向代理服务器下发微服务器的负载均衡策略、熔断限流规则、以及采集性能指标等。由于代理服务器是对微服务器的增强,类似于摩托车和挎斗的关系,所以服务网格中的代理服务器也可以称为边车(sidecar)。
当资源管理系统引入服务网格以后,每一个微服务器的实例会和一个代理服务器部署在一起(例如把微服务器的实例和代理服务器都部署在k8s的同一个pod里)。微服务器发送的所有的请求(即网络请求)都经过代理服务器转发出去。在资源管理系统中的负载均衡,由代理服务器实现,具体可以如下:代理服务器通过控制面的服务器发现组件获得所有微服务器的实例的信息;当某个微服务器发起请求时,在微服务器本地部署的代理服务器可以按照负载均衡策略,选择出接收方的微服务器的一个实例,将请求发送给此实例。
具体地,为了实现在资源管理系统中尽可能平均的分配请求给多个微服务器的实例的目的,资源管理系统中每个微服务器的实例都设置有代理服务器,各个微服务器之间不直接通信,都是通过代理服务器代理,所有的代理服务器构成了服务网格数据面。服务网格的控制面包含了管理数据面的组件,例如安全网络通信以及性能指标采集等。在控制面中新加入一个全局的负载均衡服务器,负责存储和广播所有微服务器的资源使用情况,例如连接数、CPU、以及内存占用等。所有代理服务器向负载均衡服务器上报自己所代理的微服务器的实例的资源使用情况,所有代理服务器也可以从负载均衡服务器得到其他微服务器的实例的资源使用情况,以便基于各个微服务器的实例的资源使用情况实现全局的负载均衡。通过在资源管理系统中引入全局的负载均衡服务器,负责存储和广播所有微服务器的实例的资源使用状态,代理服务器可以上报和共享所有微服务器的实例的资源使用状态,作为接收方的微服务也可以通过代理服务器更新自己的资源使用状态。这使得所有的请求方能获得全局的所有微服务器的实例的资源负载情况,能更准确的实施负载均衡,实现整个系统的资源平均分配的目的。
由多个微服务器组成的资源管理系统中,每个微服务器承担各自业务,每个微服务器是独立的进程,多个微服务器之间通过远程调用访问。例如,在网管系统中,有拓扑、告警、以及资源等微服务器,拓扑和告警可以调用资源服务器接口查询资源对象的信息。
在资源管理系统(也可以称为微服务系统)中,负载均衡不止发生在网关处,还发生在各个微服务器之间。例如,资源服务器有三个实例,告警调用资源服务器接口时,需要通过负载均衡算法选择出某一个微服务器的实例。对于单体应用来说,外部发起的请求都会经过网关,因此通过简单的负载均衡策略基本可以实现外部请求在多个服务实例上平均分配负载的目的。而在资源管理系统中,负载均衡会发生在多处,例如网管系统中,拓扑和告警都会向资源服务器发送请求,而且拓扑和告警本身也可能有多个实例。由于请求有多个来源,如果在多个请求来源处独立的做负载均衡,不能很好的实现平均分配负载的目的。因此,本申请实施例可以对资源管理系统中的所有微服务器的实例进行全局资源信息的采集,以此作为负载均衡策略的依据,实现对微服务器的实例的最优选择,以及能实现全局平均分配的目的,多个请求方共享请求信息,能避免出现接收方多个实例的负载极度不均衡的后果。
例如,假设采取轮询的负载均衡策略,告警和资源都有两个实例,经过一段时间后,出现如下情况:告警实例1有5个请求正在处理中,资源实例1有2个,资源实例2有3个;告警实例2有6个请求正在处理中,资源实例1有5个,资源实例2有1个;如果告警实例要发送新的请求,则现有的局部负载均衡中根据自己记录的数据,认为新的请求应该发送给资源实例1,而本申请实施例可以从全局的微服务器的实例的资源信息,可以确定发送给资源实例2。从这个示例可以看出,当多个请求方没有共享请求信息时,可能导致接收方的负载极度不均衡,本申请实施例解决了该问题,即基于所有微服务器的实例的全局资源信息作为负载均衡策略的依据,可以实现对微服务器的实例的最优选择。即使在请求方实例很多,接收方实例很少的特殊情况下,或者在请求对接收方的资源消耗很大的情况下,本申请实施例能够实现负载均衡的效果。
例如,某个微服务器提供接口,可以查询某一类型的数据,比方说属于某一地域的全部网元信息。基于本申请实施例的资源管理方法,请求方可以正确的估计接收方的资源消耗:各地域下的网元数量相差很大,同样是查询一个地域,对资源的消耗相差很大。负载均衡可以引入权重,请求方可以准确的估计资源消耗,接收方收到请求后,可以先查看地域的总资源数,然后估计出收集全部资源数据需要消耗多少资源。又例如,对于接收方的资源消耗并不是固定值:查询信息时,可能刚开始资源消耗比较大,而在后面的处理时,消耗的资源减少很多,此时虽然没有处理完请求,但其实已经有大量资源释放,此时请求方的代理服务器可以从负载均衡服务器器获取接收方的微服务器的资源使用情况,能更好的平均分配请求。
在有多个请求方的场景下,如果每一个请求方独立做负载均衡,由于每个请求方得到的信息只是局部的,可能会出现全局的负载极不均衡的结果。通过引入负载均衡服务器,所有代理服务器可以上报和共享所有微服务器的实例的资源占用情况,共享全局的信息,请求方可以得到所有微服务器的实例的真实资源占用情况,使得所有的请求方能更准确的实施负载均衡,实现整个系统的资源平均分配的目的,实现了全局的负载均衡。
本申请实施例中,当存在微服务器的资源更新信息时,可以通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,然后可以通过负载均衡服务器将资源更新信息广播给各个微服务器对应的代理服务器,以便各个代理服务器可以获知各个微服务器的全局资源信息,此时可以通过各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,以使得各个代理服务器可以及时且准确维护每个微服务器的资源使用状态。例如,通过请求方的微服务器发起请求,以及获取请求的资源占用信息;通过请求方的代理服务器将资源占用信息上报给负载均衡服务器;通过负载均衡服务器将资源占用信息广播给各个微服务器对应的代理服务器;通过各个微服务器对应的代理服务器基于资源占用信息更新本地预存的每个微服务器的资源使用状态。又例如,当接收方的微服务器完成对请求方发起的请求的处理后,通过接收方的代理服务器获取请求的资源释放信息,将资源释放信息上报给负载均衡服务器;通过负载均衡服务器将资源释放信息广播给各个微服务器对应的代理服务器;通过各个微服务器对应的代理服务器基于资源释放信息更新本地预存的每个微服务器的资源使用状态。此时,代理服务器可以基于资源使用状态执行负载均衡操作,例如,通过请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定请求对应的接收方的微服务器;通过请求方的代理服务器将请求发送给接收方的代理服务器,并通过接收方的代理服务器将请求转发给接收方的微服务器。从而实现了基于全局资源信息进行全局的负载均衡,提高了实施负载均衡的准确性,以及提高了对资源管理的可靠性和准确性。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见下文针对资源管理方法的详细描述,此处不再赘述。
需要说明的是,图1中的资源管理系统的结构并未构成对资源管理方法的应用场景的限定,以下将对资源管理方法进行详细说明。
请参阅图2,图2是本申请一实施例提供的资源管理方法的流程示意图。该资源管理方法可以应用于资源管理系统,该资源管理方法可以包括但不限于步骤S10至步骤S30等,具体可以如下:
S10、当存在微服务器的资源更新信息时,通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器。
其中,资源更新信息可以包括资源占用信息以及资源释放信息等,资源占用信息可以包括占用内存资源以及占用CPU资源等信息,资源释放信息可以包括释放内存资源以及释放CPU资源等信息,例如,可以通过微服务器的代理服务器将资源占用信息上报给负载均衡服务器,或者可以通过微服务器的代理服务器将资源释放信息上报给负载均衡服务器。
S20、通过负载均衡服务器将资源更新信息广播给各个微服务器对应的代理服务器。
负载均衡服务器在接收到资源更新信息后,可以将资源更新信息广播给各个微服务器对应的代理服务器。
S30、通过各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,以基于资源使用状态执行负载均衡操作。
其中,每个代理服务器均维护资源管理系统中每个微服务器的资源使用状态,各个代理服务器在接收到负载均衡服务器广播的资源更新信息后,可以基于资源更新信息更新本地预存的资源管理系统中每个微服务器的资源使用状态。后续各个代理服务器可以基于资源使用状态执行负载均衡操作。
需要说明的是,当存在微服务器的资源更新信息时,该微服务器对应的代理服务器可以更新本地预存的资源管理系统中每个微服务器的资源使用状态,以及通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,此时,负载均衡服务器可以将资源更新信息广播给资源管理系统中的其他代理服务器,以便其他代理服务器基于资源更新信息更新本地预存的资源管理系统中每个微服务器的资源使用状态,其他代理服务器为资源管理系统中除了上报该资源更新信息的代理服务器之外的所有代理服务器。或者,当存在微服务器的资源更新信息时,可以通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,此时,负载均衡服务器可以将资源更新信息广播给资源管理系统中所有的代理服务器(包括上报该资源更新信息的代理服务器),以便所有代理服务器基于资源更新信息更新本地预存的资源管理系统中每个微服务器的资源使用状态。
在一实施例中,资源管理方法还可以包括:为资源管理系统中的每个微服务器配置对应的代理服务器,以及配置负载均衡服务器;通过每个微服务器的代理服务器向负载均衡服务器发送注册请求;根据注册请求建立负载均衡服务器与每个微服务器的代理服务器之间的连接关系。
为了提高数据交互的可靠性和负载均衡的准确性,在资源管理系统中,为每个微服务器配置对应的代理服务器,以及配置负载均衡服务器,然后通过每个微服务器的代理服务器向负载均衡服务器发送注册请求,各个代理服务器可以接收负载均衡服务器返回的注册响应,基于注册响应建立负载均衡服务器与每个微服务器的代理服务器之间的连接关系,以便负载均衡服务器和代理服务器之间可以进行数据交互。
参照图3,在一实施例中,当存在微服务器的资源更新时,通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,通过负载均衡服务器将资源更新信息广播给各个微服务器对应的代理服务器,通过各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,可以包括但不限于步骤S11和步骤S14等,具体可以如下:
步骤S11、通过请求方的微服务器发起请求,以及获取请求的资源占用信息;
步骤S12、通过请求方的代理服务器将资源占用信息上报给负载均衡服务器;
步骤S13、通过负载均衡服务器将资源占用信息广播给各个微服务器对应的代理服务器;
步骤S14、通过各个微服务器对应的代理服务器基于资源占用信息更新本地预存的每个微服务器的资源使用状态。
为了提高资源使用状态更新的及时性和便捷性,可以在发起请求时更新资源使用状态。具体地,在资源管理系统中,任何一个微服务器均可以作为请求方的微服务器或接收方的微服务器,其中,请求方的微服务器可以发起请求,以及获取请求的资源占用信息,例如该请求占用资源A的量以及占用资源B的量等信息。然后请求方的代理服务器可以将资源占用信息上报给负载均衡服务器,负载均衡服务器在接收到资源占用信息,可以根据资源占用信息更新本地预存的资源管理系统中每个微服务器的资源使用状态,以及将资源占用信息广播给各个微服务器对应的代理服务器。此时,各个微服务器对应的代理服务器可以基于接收到的资源占用信息更新本地预存的资源管理系统中每个微服务器的资源使用状态,例如,可以基于微服务器A的实例1的资源占用信息,更新本地预存的微服务器A的实例1的资源占用情况。
参照图4,在一实施例中,基于资源使用状态执行负载均衡操作可以包括但不限于步骤S21和步骤S22等,具体可以如下:
步骤S21、通过请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定请求对应的接收方的微服务器;
步骤S22、通过请求方的代理服务器将请求发送给接收方的代理服务器,并通过接收方的代理服务器将请求转发给接收方的微服务器。
其中,负载均衡策略可以根据实际需要进行灵活设置,例如,负载均衡策略可以包括权重轮询、随机、最小连接数优先、以及响应速度优先等,负载均衡的目的是为了尽可能的将负载均衡地分配给各微服务器的实例。例如,最小连接数优先,是基于一个假设,每条连接消耗的微服务器资源是基本相同的,因此可以用连接数来估计微服务器所占用的资源,因为拥有最少连接的微服务器剩余可用的资源最多,所以可以将请求优先分发给最少连接的微服务器,可以实现平均分配的目的。
为了提高请求分发的准确性和灵活性,可以基于负载均衡策略分发请求,例如,请求方的代理服务器可以基于本地预存的资源管理系统中每个微服务器的资源使用状态,以及预设的负载均衡策略,确定请求对应的接收方的微服务器。然后,请求方的代理服务器可以将请求发送给接收方的代理服务器,此时,接收方的代理服务器可以将请求转发给接收方的微服务器。
在一实施例中,负载均衡策略为最小连接数优先,通过请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定请求对应的接收方的微服务器包括:通过请求方的代理服务器基于本地预存的每个微服务器实例的资源使用状态以及最小连接数优先的负载均衡策略,将多个微服务器中连接数最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例。通过接收方的代理服务器将请求转发给接收方的微服务器包括:通过接收方的代理服务器将请求转发给接收方的微服务器的实例。
为了提高负载均衡的准确性和便捷性,可以基于最小连接数优先的负载均衡策略对请求进行分发。具体地,请求方的微服务器在发起请求后,请求方的代理服务器可以基于本地预存的每个微服务器实例的资源使用状态以及最小连接数优先的负载均衡策略,从多个微服务器中筛选出连接数最小所对应的微服务器的实例,并将该连接数最小所对应的微服务器的实例设置为请求对应的接收方的微服务器的实例。然后,请求方的代理服务器可以将请求发送给该接收方的微服务器的实例,此时该请求被接收方的代理服务器接收,接收方的代理服务器可以将请求转发给接收方的微服务器的实例。
例如,请求方的微服务器将负载均衡策略设置为最小连接数优先,请求方的微服务器通过请求方的代理服务器向接收方的代理服务器发送请求1,接收方的代理服务器收到请求1后,将本实例的连接数+1,上报给负载均衡服务器,然后将请求1发送给本地的服务实例(即接收方的微服务器的实例)。负载均衡服务器收到上报连接数+1的信息后,更新接收方的微服务器该实例的连接数,然后广播给资源管理系统中所有的代理服务器。所有的代理服务器(除了上报信息的代理服务器之外),更新该接收方的微服务器此实例的连接数。然后,发起新请求的代理服务器,可以在本地内存中找出所有微服务器的所有实例的资源占用信息,从中找出连接数最少的一个实例,发送请求给此实例。接收方的代理服务器收到请求1的响应后,将本实例的连接数-1,关闭连接,上报给负载均衡服务器。负载均衡服务器收到上报连接数-1的信息后,更新接收方的代理服务器此实例的连接数,然后广播给所有的代理服务器,所有的代理服务器(除了上报信息的代理服务器之外),更新此实例的连接数。
在一实施例中,负载均衡策略为响应速度优先,通过请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定请求对应的接收方的微服务器包括:通过请求方的代理服务器基于本地预存的每个微服务器实例的资源使用状态以及响应速度优先的负载均衡策略,将多个微服务器中响应速度最快所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例。通过接收方的代理服务器将请求转发给接收方的微服务器包括:通过接收方的代理服务器将请求转发给接收方的微服务器的实例。
为了提高负载均衡的准确性和灵活性,可以基于响应速度优先的负载均衡策略对请求进行分发。具体地,请求方的微服务器在发起请求后,请求方的代理服务器可以基于本地预存的资源管理系统中每个微服务器实例的资源使用状态以及响应速度优先的负载均衡策略,从多个微服务器中筛选出响应速度最快所对应的微服务器的实例,将多个微服务器中响应速度最快所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例。然后,请求方的代理服务器可以将请求发送给该接收方的微服务器的实例,此时该请求被接收方的代理服务器接收,接收方的代理服务器将请求转发给接收方的微服务器的实例。
例如,某些微服务器需要一段时间的预热才能处理大量请求,当采用固定权重的时候,如果大量请求发送给新启动的服务实例,会出现节点过载的情况,因此可以动态调节请求的分发。请求方的微服务器将负载均衡策略设置为按响应速度优先。此微服务器A刚启动的时候,只能处理10条/s请求,经过充分预热以后,可以处理200/s的请求。因此,配置微服务器A的实例的默认权重为10,充分预热后,权限为1K。微服务器A的实例刚启动时,发起请求的代理服务器按权重10给此实例分配请求,经过一段时间的预热后,微服务器A可以处理200/s的请求,此时可以更新微服务器A的实例的权重为200,上报给负载均衡服务器。负载均衡服务器收到上报信息后,更新此实例的权重,然后广播给所有的代理服务器。所有的代理服务器(除了上报信息的代理服务器之外),更新微服务器A此实例的权重,权重越大,说明响应速度越快,权重越小,说明响应速度越慢。在发起新请求的代理服务器,在本地内存中找出所有微服务器的实例的权重,按权重给所有的微服务器实例分配请求。例如,如果存在一个新启动的实例,两个充分预热的实例,那么在相同时间内,分配到的请求数比例可以为1:20:20。
在一实施例中,负载均衡策略为权重轮询,通过请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定请求对应的接收方的微服务器包括:通过请求方的代理服务器基于本地预存的每个微服务器实例的资源使用状态以及权重轮询的负载均衡策略,将多个微服务器中权重最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;权重为处理请求所消耗资源的权重。通过接收方的代理服务器将请求转发给接收方的微服务器包括:通过接收方的代理服务器将请求转发给接收方的微服务器的实例。
为了提高负载均衡的精准性和可靠性,可以基于权重轮询的负载均衡策略对请求进行分发。具体地,请求方的微服务器在发起请求后,请求方的代理服务器可以基于本地预存的每个微服务器实例的资源使用状态以及权重轮询的负载均衡策略,从多个微服务器中筛选出权重最小所对应的微服务器的实例,将多个微服务器中权重最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例,权重为处理请求所消耗资源的权重。然后,请求方的代理服务器可以将请求发送给该接收方的微服务器的实例,此时该请求被接收方的代理服务器接收,接收方的代理服务器可以将请求转发给接收方的微服务器的实例。
例如,请求方的微服务器将负载均衡策略设置为按权重轮询,此请求方的微服务器将每一类请求的处理资源占用消耗设置权重值,例如小中大的权重值依次为1、2、以及4等。接收方的代理服务器收到请求后,计算出权重值,增加本实例的总权重,上报给负载均衡服务器,然后将请求发送给本地的服务实例。负载均衡服务器收到上报总权重的信息后,更新接收方的微服务器此实例的权重,然后广播给资源管理系统中所有的代理服务器。所有代理服务器(除了上报信息的代理服务器之外),更新该接收方的微服务器此实例的权重。然后,发起新请求的代理服务器,可以在本地内存中找出所有微服务器的所有实例的资源占用信息,从中找出权重最低的一个实例,发送请求给此实例。接收方的代理服务器收到请求的响应后,减去该请求对应的权重,上报给负载均衡服务器。负载均衡服务器收到上报信息后,更新此实例的权重,然后广播给所有的代理服务器,所有代理服务器(除了上报信息的代理服务器之外),更新此实例的权重值。
参照图5,在一实施例中,当存在微服务器的资源更新时,通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,通过负载均衡服务器将资源更新信息广播给各个微服务器对应的代理服务器,通过各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,可以包括但不限于步骤31至步骤S33等,具体可以如下:
步骤S31、当接收方的微服务器完成对请求方发起的请求的处理后,通过接收方的代理服务器获取请求的资源释放信息,将资源释放信息上报给负载均衡服务器;
步骤S32、通过负载均衡服务器将资源释放信息广播给各个微服务器对应的代理服务器;
步骤S33、通过各个微服务器对应的代理服务器基于资源释放信息更新本地预存的每个微服务器的资源使用状态。
为了提高资源使用状态更新的及时性和准确性,可以在完成对请求处理时更新资源使用状态。具体地,在资源管理系统中,任何一个微服务器均可以作为请求方的微服务器或接收方的微服务器,其中,接收方的微服务器可以接收请求方发起的请求并对请求进行处理,当接收方的微服务器完成对请求方发起的请求的处理后,接收方的代理服务器可以获取已经完成处理的请求的资源释放信息,例如该请求释放资源A的量以及释放资源B的量等信息,将资源释放信息上报给负载均衡服务器。负载均衡服务器在接收到资源释放信息,可以根据资源释放信息更新本地预存的资源管理系统中每个微服务器的资源使用状态,以及将资源释放信息广播给各个微服务器对应的代理服务器。此时,各个微服务器对应的代理服务器可以基于资源释放信息更新本地预存的每个微服务器的资源使用状态。
本申请实施例当存在微服务器的资源更新信息时,可以通过微服务器的代理服务器将资源更新信息上报给负载均衡服务器,然后可以通过负载均衡服务器将资源更新信息广播给各个微服务器对应的代理服务器,以便各个代理服务器可以获知各个微服务器的全局资源信息,此时可以通过各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,以使得各个代理服务器可以及时且准确维护每个微服务器的资源使用状态,以基于资源使用状态执行负载均衡操作,从而实现了基于全局资源信息进行全局的负载均衡,提高了实施负载均衡的准确性,以及提高了对资源管理的可靠性和准确性。
请参阅图6,图6是本申请一实施例提供的资源管理方法的流程示意图。该资源管理方法可以应用于代理服务器,该资源管理方法可以包括但不限于步骤S101至步骤S102等,具体可以如下:
S101、当监测到微服务器存在资源更新信息时,将资源更新信息上报给负载均衡服务器,以及基于资源更新信息更新本地预存的每个微服务器的资源使用状态。
S102、根据资源使用状态执行负载均衡操作。
在一实施例中,当监测到微服务器存在资源更新信息时,将资源更新信息上报给负载均衡服务器,以及基于资源更新信息更新本地预存的每个微服务器的资源使用状态可以包括:获取请求方的微服务器发起请求的资源占用信息;将资源占用信息上报给负载均衡服务器;以及,基于资源占用信息更新本地预存的每个微服务器的资源使用状态。
在一实施例中,根据资源使用状态执行负载均衡操作可以包括:根据资源使用状态以及最小连接数优先的负载均衡策略,将多个微服务器中连接数最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;将请求发送给接收方的代理服务器,以使得接收方的代理服务器将请求转发给接收方的微服务器的实例。
在一实施例中,根据资源使用状态执行负载均衡操作可以包括:根据资源使用状态以及响应速度优先的负载均衡策略,将多个微服务器中响应速度最快所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;将请求发送给接收方的代理服务器,以使得接收方的代理服务器将请求转发给接收方的微服务器的实例。
在一实施例中,根据资源使用状态执行负载均衡操作可以包括:根据资源使用状态以及权重轮询的负载均衡策略,将多个微服务器中权重最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;权重为处理请求所消耗资源的权重;将请求发送给接收方的代理服务器,以使得接收方的代理服务器将请求转发给接收方的微服务器的实例。
在一实施例中,根据资源使用状态执行负载均衡操作可以包括:接收负载均衡服务器广播的资源释放信息,资源释放信息为接收方的微服务器完成对请求方发起的请求的处理完成后,通过接收方的代理服务器上报给负载均衡服务器的;根据资源释放信息更新本地预存的每个微服务器实例的资源使用状态。
在一实施例中,资源管理方法还可以包括:向负载均衡服务器发送注册请求,根据注册请求建立与负载均衡服务器之间连接关系;或者,向负载均衡服务器发送注销请求,根据注销请求注销与负载均衡服务器之间连接关系。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对资源管理方法的详细描述,此处不再赘述。
本申请实施例当监测到微服务器存在资源更新信息时,代理服务器可以将资源更新信息上报给负载均衡服务器,以便负载均衡服务器及时将资源更新信息广播给各个微服务器对应的代理服务器,以便各个代理服务器可以获知各个微服务器的全局资源信息,各个微服务器对应的代理服务器基于资源更新信息更新本地预存的每个微服务器的资源使用状态,以使得各个代理服务器可以及时且准确维护每个微服务器的资源使用状态,以及基于资源更新信息更新本地预存的每个微服务器的资源使用状态,可以准确维护每个微服务器的资源使用状态。代理服务器可以根据资源使用状态执行负载均衡操作,从而实现了基于全局资源信息进行全局的负载均衡,提高了实施负载均衡的准确性,以及提高了对资源管理的可靠性和准确性。
请参阅图7,图7是本申请实施例提供的一种代理服务器的结构示意性框图。
如图7所示,该代理服务器300可以包括通过系统总线301连接的处理器302、存储器303和通信接口304,其中,存储器303可以包括非易失性计算机可读存储介质和内存储器。
非易失性计算机可读存储介质可存储计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种资源管理方法。
处理器302用于提供计算和控制能力,支撑整个代理服务器的运行。
存储器303为非易失性计算机可读存储介质中的计算机程序的运行提供环境,该计算机程序被处理器302执行时,可使得处理器302执行任意一种资源管理方法。
该通信接口304用于通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的代理服务器300的限定,具体的代理服务器300可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,该总线301比如为I2C(Inter-integratedCircuit)总线,存储器303可以是Flash芯片、只读存储器(ROM,Read-OnlyMemory)磁盘、光盘、U盘或移动硬盘等,处理器302可以是中央处理单元(CentralProcessingUnit,CPU),该处理器302还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现场可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一实施例中,处理器302用于运行存储在存储器303中的计算机程序,以执行如下步骤:
当监测到微服务器存在资源更新信息时,将资源更新信息上报给负载均衡服务器,以及基于资源更新信息更新本地预存的每个微服务器的资源使用状态;根据资源使用状态执行负载均衡操作。
在一实施例中,在将资源更新信息上报给负载均衡服务器,以及基于资源更新信息更新本地预存的每个微服务器的资源使用状态时,处理器302还执行:获取请求方的微服务器发起请求的资源占用信息;将资源占用信息上报给负载均衡服务器;以及,基于资源占用信息更新本地预存的每个微服务器的资源使用状态。
在一实施例中,在根据资源使用状态执行负载均衡操作时,处理器302还执行:根据资源使用状态以及最小连接数优先的负载均衡策略,将多个微服务器中连接数最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;将请求发送给接收方的代理服务器,以使得接收方的代理服务器将请求转发给接收方的微服务器的实例。
在一实施例中,在根据资源使用状态执行负载均衡操作时,处理器302还执行:根据资源使用状态以及响应速度优先的负载均衡策略,将多个微服务器中响应速度最快所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;将请求发送给接收方的代理服务器,以使得接收方的代理服务器将请求转发给接收方的微服务器的实例。
在一实施例中,在根据资源使用状态执行负载均衡操作时,处理器302还执行:根据资源使用状态以及权重轮询的负载均衡策略,将多个微服务器中权重最小所对应的微服务器的实例,设置为请求对应的接收方的微服务器的实例;权重为处理请求所消耗资源的权重;将请求发送给接收方的代理服务器,以使得接收方的代理服务器将请求转发给接收方的微服务器的实例。
在一实施例中,在根据资源使用状态执行负载均衡操作时,处理器302还执行:接收负载均衡服务器广播的资源释放信息,资源释放信息为接收方的微服务器完成对请求方发起的请求的处理完成后,通过接收方的代理服务器上报给负载均衡服务器的;根据资源释放信息更新本地预存的每个微服务器实例的资源使用状态。
在一实施例中,处理器302还执行:向负载均衡服务器发送注册请求,根据注册请求建立与负载均衡服务器之间连接关系;或者,向负载均衡服务器发送注销请求,根据注销请求注销与负载均衡服务器之间连接关系。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对资源管理方法的详细描述,此处不再赘述。
本申请的实施例中还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序中包括程序指令,处理器执行程序指令,实现本申请实施例提供的任一项资源管理方法。以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,计算机可读存储介质可以是前述实施例的移动终端的内部存储单元,例如移动终端的硬盘或内存。计算机可读存储介质也可以是移动终端的外部存储设备,例如移动终端上配备的插接式硬盘,智能存储卡(SmartMediaCard,SMC),安全数字(SecureDigital,SD)卡,闪存卡(FlashCard)等。
由于该计算机可读存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种资源管理方法,因此,可以实现本申请实施例所提供的任一种资源管理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅是本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (18)
1.一种资源管理方法,其特征在于,所述资源管理方法应用于资源管理系统,所述资源管理系统包括多个微服务器、每个微服务器对应的代理服务器、以及负载均衡服务器,所述资源管理方法包括:
当存在微服务器的资源更新信息时,通过所述微服务器的代理服务器将所述资源更新信息上报给所述负载均衡服务器;
通过所述负载均衡服务器将所述资源更新信息广播给各个微服务器对应的代理服务器;
通过各个微服务器对应的代理服务器基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态,以基于所述资源使用状态执行负载均衡操作。
2.根据权利要求1所述的资源管理方法,其特征在于,所述当存在微服务器的资源更新时,通过所述微服务器的代理服务器将所述资源更新信息上报给所述负载均衡服务器,通过所述负载均衡服务器将所述资源更新信息广播给各个微服务器对应的代理服务器,通过各个微服务器对应的代理服务器基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态包括:
通过请求方的微服务器发起请求,以及获取所述请求的资源占用信息;
通过所述请求方的代理服务器将所述资源占用信息上报给所述负载均衡服务器;
通过所述负载均衡服务器将所述资源占用信息广播给各个微服务器对应的代理服务器;
通过各个微服务器对应的代理服务器基于所述资源占用信息更新本地预存的每个微服务器的资源使用状态。
3.根据权利要求2所述的资源管理方法,其特征在于,所述基于所述资源使用状态执行负载均衡操作包括:
通过所述请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定所述请求对应的接收方的微服务器;
通过所述请求方的代理服务器将所述请求发送给所述接收方的代理服务器,并通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器。
4.根据权利要求3所述的资源管理方法,其特征在于,所述负载均衡策略为最小连接数优先,所述通过所述请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定所述请求对应的接收方的微服务器包括:
通过所述请求方的代理服务器基于本地预存的每个微服务器实例的资源使用状态以及最小连接数优先的负载均衡策略,将多个微服务器中连接数最小所对应的微服务器的实例,设置为所述请求对应的接收方的微服务器的实例;
所述通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器包括:
通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器的实例。
5.根据权利要求3所述的资源管理方法,其特征在于,所述负载均衡策略为响应速度优先,所述通过所述请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定所述请求对应的接收方的微服务器包括:
通过所述请求方的代理服务器基于本地预存的每个微服务器实例的资源使用状态以及响应速度优先的负载均衡策略,将多个微服务器中响应速度最快所对应的微服务器的实例,设置为所述请求对应的接收方的微服务器的实例;
所述通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器包括:
通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器的实例。
6.根据权利要求3所述的资源管理方法,其特征在于,所述负载均衡策略为权重轮询,所述通过所述请求方的代理服务器基于本地预存的每个微服务器的资源使用状态,以及预设的负载均衡策略,确定所述请求对应的接收方的微服务器包括:
通过所述请求方的代理服务器基于本地预存的每个微服务器实例的资源使用状态以及权重轮询的负载均衡策略,将多个微服务器中权重最小所对应的微服务器的实例,设置为所述请求对应的接收方的微服务器的实例;所述权重为处理请求所消耗资源的权重;
所述通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器包括:
通过所述接收方的代理服务器将所述请求转发给所述接收方的微服务器的实例。
7.根据权利要求1所述的资源管理方法,其特征在于,所述当存在微服务器的资源更新时,通过所述微服务器的代理服务器将所述资源更新信息上报给所述负载均衡服务器,通过所述负载均衡服务器将所述资源更新信息广播给各个微服务器对应的代理服务器,通过各个微服务器对应的代理服务器基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态包括:
当接收方的微服务器完成对请求方发起的请求的处理后,通过所述接收方的代理服务器获取所述请求的资源释放信息,将所述资源释放信息上报给所述负载均衡服务器;
通过所述负载均衡服务器将所述资源释放信息广播给各个微服务器对应的代理服务器;
通过各个微服务器对应的代理服务器基于所述资源释放信息更新本地预存的每个微服务器的资源使用状态。
8.根据权利要求1至7任一项所述的资源管理方法,其特征在于,所述资源管理方法还包括:
为所述资源管理系统中的每个微服务器配置对应的代理服务器,以及配置负载均衡服务器;
通过每个微服务器的代理服务器向所述负载均衡服务器发送注册请求;
根据所述注册请求建立所述负载均衡服务器与每个微服务器的代理服务器之间的连接关系。
9.一种资源管理方法,其特征在于,所述资源管理方法应用于代理服务器,所述代理服务器为请求方的微服务器对应的代理服务器,所述资源管理方法包括:
当监测到微服务器存在资源更新信息时,将所述资源更新信息上报给所述负载均衡服务器,以及基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态;
根据所述资源使用状态执行负载均衡操作。
10.根据权利要求9所述的资源管理方法,其特征在于,所述当监测到微服务器存在资源更新信息时,将所述资源更新信息上报给所述负载均衡服务器,以及基于所述资源更新信息更新本地预存的每个微服务器的资源使用状态包括:
获取所述请求方的微服务器发起请求的资源占用信息;
将所述资源占用信息上报给所述负载均衡服务器;以及,
基于所述资源占用信息更新本地预存的每个微服务器的资源使用状态。
11.根据权利要求9所述的资源管理方法,其特征在于,所述根据所述资源使用状态执行负载均衡操作包括:
根据所述资源使用状态以及最小连接数优先的负载均衡策略,将多个微服务器中连接数最小所对应的微服务器的实例,设置为所述请求对应的接收方的微服务器的实例;
将所述请求发送给所述接收方的代理服务器,以使得所述接收方的代理服务器将所述请求转发给所述接收方的微服务器的实例。
12.根据权利要求9所述的资源管理方法,其特征在于,所述根据所述资源使用状态执行负载均衡操作包括:
根据所述资源使用状态以及响应速度优先的负载均衡策略,将多个微服务器中响应速度最快所对应的微服务器的实例,设置为所述请求对应的接收方的微服务器的实例;
将所述请求发送给所述接收方的代理服务器,以使得所述接收方的代理服务器将所述请求转发给所述接收方的微服务器的实例。
13.根据权利要求9所述的资源管理方法,其特征在于,所述根据所述资源使用状态执行负载均衡操作包括:
根据所述资源使用状态以及权重轮询的负载均衡策略,将多个微服务器中权重最小所对应的微服务器的实例,设置为所述请求对应的接收方的微服务器的实例;所述权重为处理请求所消耗资源的权重;
将所述请求发送给所述接收方的代理服务器,以使得所述接收方的代理服务器将所述请求转发给所述接收方的微服务器的实例。
14.根据权利要求9所述的资源管理方法,其特征在于,所述根据所述资源使用状态执行负载均衡操作包括:
接收负载均衡服务器广播的资源释放信息,所述资源释放信息为接收方的微服务器完成对请求方发起的请求的处理完成后,通过所述接收方的代理服务器上报给所述负载均衡服务器的;
根据所述资源释放信息更新本地预存的每个微服务器实例的资源使用状态。
15.根据权利要求9至14任一项所述的资源管理方法,其特征在于,所述资源管理方法还包括:
向所述负载均衡服务器发送注册请求,根据所述注册请求建立与所述负载均衡服务器之间连接关系;或者,
向所述负载均衡服务器发送注销请求,根据所述注销请求注销与所述负载均衡服务器之间连接关系。
16.一种资源管理系统,其特征在于,所述资源管理系统包括多个微服务器、每个微服务器对应的代理服务器、以及负载均衡服务器,所述负载均衡服务器与各个代理服务器进行通信连接,所述资源管理系统用于执行权利要求1至8任一项所述的资源管理方法。
17.一种代理服务器,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行权利要求9至15任一项所述的资源管理方法。
18.一种存储介质,用于计算机可读存储,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序被处理器加载以执行权利要求1至8任一项所述的资源管理方法,或
者,所述计算机程序被处理器加载以执行权利要求9至15任一项所述的资源管理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010549774.5A CN113810443A (zh) | 2020-06-16 | 2020-06-16 | 资源管理方法、系统、代理服务器及存储介质 |
EP21826298.8A EP4167539A4 (en) | 2020-06-16 | 2021-06-15 | RESOURCE MANAGEMENT METHOD AND SYSTEM, PROXY SERVER AND STORAGE MEDIUM |
PCT/CN2021/100121 WO2021254331A1 (zh) | 2020-06-16 | 2021-06-15 | 资源管理方法、系统、代理服务器及存储介质 |
JP2022577751A JP2023532218A (ja) | 2020-06-16 | 2021-06-15 | リソース管理方法、システム、プロキシサーバ及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010549774.5A CN113810443A (zh) | 2020-06-16 | 2020-06-16 | 资源管理方法、系统、代理服务器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113810443A true CN113810443A (zh) | 2021-12-17 |
Family
ID=78944465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010549774.5A Pending CN113810443A (zh) | 2020-06-16 | 2020-06-16 | 资源管理方法、系统、代理服务器及存储介质 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4167539A4 (zh) |
JP (1) | JP2023532218A (zh) |
CN (1) | CN113810443A (zh) |
WO (1) | WO2021254331A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114884886A (zh) * | 2022-05-26 | 2022-08-09 | 中国联合网络通信集团有限公司 | 微服务负载均衡方法、装置、设备、系统及存储介质 |
CN115134259A (zh) * | 2022-06-27 | 2022-09-30 | 平安银行股份有限公司 | 人工智能服务监测方法、装置、设备及可读存储介质 |
CN115134227A (zh) * | 2022-06-17 | 2022-09-30 | 京东科技信息技术有限公司 | 用于维护服务器的方法和装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500278B (zh) * | 2021-12-30 | 2024-04-09 | 武汉思普崚技术有限公司 | 一种通过代理服务器升级特征库的方法和装置 |
CN117768394A (zh) * | 2022-09-16 | 2024-03-26 | 中兴通讯股份有限公司 | 一种负载均衡处理方法、装置、存储介质及电子装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207550A (zh) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | 负载均衡系统及多种业务实现负载均衡的方法 |
WO2008110054A1 (fr) * | 2007-03-13 | 2008-09-18 | Huawei Technologies Co., Ltd. | Système de réseau pair a pair, nœud de proximité, et procédé de communication pour les nœuds parmi les réseaux de recouvrement |
CN101431532A (zh) * | 2008-12-15 | 2009-05-13 | 中国电信股份有限公司 | 一种内容路由方法、负载均衡设备和资源管理设备 |
KR20110064178A (ko) * | 2009-12-07 | 2011-06-15 | 성균관대학교산학협력단 | 에이전트 작업부하를 반영한 부하 분산 방법 |
US20120002549A1 (en) * | 2009-03-19 | 2012-01-05 | Hiroshi Dempo | Network system |
CN102377598A (zh) * | 2010-08-26 | 2012-03-14 | 中国移动通信集团公司 | 一种互联网应用托管系统、设备和方法 |
CN106790381A (zh) * | 2016-11-21 | 2017-05-31 | 浙江理工大学 | 基于加权最小连接的动态反馈负载均衡方法 |
CN108566424A (zh) * | 2018-04-11 | 2018-09-21 | 深圳市腾讯网络信息技术有限公司 | 基于服务器资源消耗预测的调度方法、装置和系统 |
CN108712464A (zh) * | 2018-04-13 | 2018-10-26 | 中国科学院信息工程研究所 | 一种面向集群微服务高可用的实现方法 |
CN109618002A (zh) * | 2019-01-11 | 2019-04-12 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
WO2019125258A1 (en) * | 2017-12-21 | 2019-06-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Agent, server, core network node and methods therein for handling an event of a network service deployed in a cloud environment |
US20200137151A1 (en) * | 2017-06-30 | 2020-04-30 | Huawei Technologies Co., Ltd. | Load balancing engine, client, distributed computing system, and load balancing method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101621413A (zh) * | 2009-08-20 | 2010-01-06 | 中兴通讯股份有限公司 | 实现对web服务器进行负载均衡和容灾的装置及方法 |
US10452843B2 (en) * | 2018-01-11 | 2019-10-22 | ArecaBay, Inc. | Self-adaptive application programming interface level security monitoring |
CN110413346B (zh) * | 2019-07-30 | 2022-09-20 | 中国工商银行股份有限公司 | 一种参数更新方法及装置 |
CN111142971B (zh) * | 2019-12-30 | 2023-08-01 | 中科星图股份有限公司 | 一种适应传统应用云化的云平台应用就绪检查方法 |
-
2020
- 2020-06-16 CN CN202010549774.5A patent/CN113810443A/zh active Pending
-
2021
- 2021-06-15 WO PCT/CN2021/100121 patent/WO2021254331A1/zh unknown
- 2021-06-15 EP EP21826298.8A patent/EP4167539A4/en active Pending
- 2021-06-15 JP JP2022577751A patent/JP2023532218A/ja active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008110054A1 (fr) * | 2007-03-13 | 2008-09-18 | Huawei Technologies Co., Ltd. | Système de réseau pair a pair, nœud de proximité, et procédé de communication pour les nœuds parmi les réseaux de recouvrement |
CN101207550A (zh) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | 负载均衡系统及多种业务实现负载均衡的方法 |
CN101431532A (zh) * | 2008-12-15 | 2009-05-13 | 中国电信股份有限公司 | 一种内容路由方法、负载均衡设备和资源管理设备 |
US20120002549A1 (en) * | 2009-03-19 | 2012-01-05 | Hiroshi Dempo | Network system |
KR20110064178A (ko) * | 2009-12-07 | 2011-06-15 | 성균관대학교산학협력단 | 에이전트 작업부하를 반영한 부하 분산 방법 |
CN102377598A (zh) * | 2010-08-26 | 2012-03-14 | 中国移动通信集团公司 | 一种互联网应用托管系统、设备和方法 |
CN106790381A (zh) * | 2016-11-21 | 2017-05-31 | 浙江理工大学 | 基于加权最小连接的动态反馈负载均衡方法 |
US20200137151A1 (en) * | 2017-06-30 | 2020-04-30 | Huawei Technologies Co., Ltd. | Load balancing engine, client, distributed computing system, and load balancing method |
WO2019125258A1 (en) * | 2017-12-21 | 2019-06-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Agent, server, core network node and methods therein for handling an event of a network service deployed in a cloud environment |
CN108566424A (zh) * | 2018-04-11 | 2018-09-21 | 深圳市腾讯网络信息技术有限公司 | 基于服务器资源消耗预测的调度方法、装置和系统 |
CN108712464A (zh) * | 2018-04-13 | 2018-10-26 | 中国科学院信息工程研究所 | 一种面向集群微服务高可用的实现方法 |
CN109618002A (zh) * | 2019-01-11 | 2019-04-12 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
Non-Patent Citations (2)
Title |
---|
杨尚森;张文学;胡蓓;: "基于移动代理的一种减少网络负载的数据更新机制", 微电子学与计算机, no. 12, 20 December 2006 (2006-12-20) * |
杨永健, 鞠九滨, 陈亚军: "分布式系统中基于移动代理的负载均衡模型和负载更新算法的研究", 计算机工程与应用, no. 17, 1 May 2006 (2006-05-01) * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114884886A (zh) * | 2022-05-26 | 2022-08-09 | 中国联合网络通信集团有限公司 | 微服务负载均衡方法、装置、设备、系统及存储介质 |
CN115134227A (zh) * | 2022-06-17 | 2022-09-30 | 京东科技信息技术有限公司 | 用于维护服务器的方法和装置 |
CN115134259A (zh) * | 2022-06-27 | 2022-09-30 | 平安银行股份有限公司 | 人工智能服务监测方法、装置、设备及可读存储介质 |
CN115134259B (zh) * | 2022-06-27 | 2024-02-02 | 平安银行股份有限公司 | 人工智能服务监测方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4167539A4 (en) | 2023-11-22 |
JP2023532218A (ja) | 2023-07-27 |
EP4167539A1 (en) | 2023-04-19 |
WO2021254331A1 (zh) | 2021-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113810443A (zh) | 资源管理方法、系统、代理服务器及存储介质 | |
CN109618005B (zh) | 调用服务器的方法和代理服务器 | |
US10791096B2 (en) | Interfaces to manage direct network peerings | |
US11570262B2 (en) | Methods, systems, and computer readable media for rank processing for network function selection | |
US11405931B2 (en) | Methods, systems, and computer readable media for providing for network slice management using feedback mechanism | |
EP2786261B1 (en) | Interfaces to manage direct network peerings | |
CN108667882B (zh) | 基于动态权重调整的负载均衡方法、装置和电子设备 | |
WO2021227999A1 (zh) | 云计算服务系统和方法 | |
CN109600760B (zh) | 网络管理方法、设备及系统 | |
US11671326B2 (en) | Methods and systems for service policy orchestration in a communication network | |
CN112448987A (zh) | 一种熔断降级的触发方法、系统和存储介质 | |
CN109413117B (zh) | 分布式数据计算方法、装置、服务器及计算机存储介质 | |
CN108259605B (zh) | 一种基于多数据中心的数据调用系统及方法 | |
CN109587068B (zh) | 流量切换方法、装置、设备及计算机可读存储介质 | |
JP6667461B2 (ja) | Enum/dnsトラヒック制御システム、ロードバランサ、及びenum/dnsトラヒック制御方法 | |
CN110995890B (zh) | 域名请求的调度方法及装置 | |
JPH05134959A (ja) | 遠隔サービス実行制御システム | |
CN116155829A (zh) | 网络流量处理方法、装置、介质及电子设备 | |
CN113055461A (zh) | 一种基于ZooKeeper的无人集群分布式协同指挥控制方法 | |
CN112689008A (zh) | 网络连接池管理方法、装置、设备和存储介质 | |
CN112346853A (zh) | 用于分布应用的方法和设备 | |
CN114979276B (zh) | 一种资源动态调度方法、装置、设备及存储介质 | |
CN114268615B (zh) | 基于tcp连接的业务处理方法和系统 | |
CN116055565B (zh) | 一种数据传输方法、系统、装置、电子设备及存储介质 | |
EP4322502A1 (en) | Internet-of-vehicles based traffic scheduling method and apparatus, device and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |