CN111324464A - 一种基于微服务架构的负载分配方法 - Google Patents

一种基于微服务架构的负载分配方法 Download PDF

Info

Publication number
CN111324464A
CN111324464A CN202010170571.5A CN202010170571A CN111324464A CN 111324464 A CN111324464 A CN 111324464A CN 202010170571 A CN202010170571 A CN 202010170571A CN 111324464 A CN111324464 A CN 111324464A
Authority
CN
China
Prior art keywords
node
load distribution
micro
distribution method
service
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
Application number
CN202010170571.5A
Other languages
English (en)
Inventor
张思路
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Shouqi Zhixing Technology Co Ltd
Original Assignee
Beijing Shouqi Zhixing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Shouqi Zhixing Technology Co Ltd filed Critical Beijing Shouqi Zhixing Technology Co Ltd
Priority to CN202010170571.5A priority Critical patent/CN111324464A/zh
Publication of CN111324464A publication Critical patent/CN111324464A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Abstract

本发明公开的基于微服务架构的负载分配方法,涉及微服务技术领域,根据设定的频率,向注册中心发送微服务架构中各个节点的资源数据及服务数据,注册中心解析各个节点的资源数据及服务数据,得到各个节点的权重及运算效率,计算各个节点的优先级,将当前负载分配给优先级最高的节点,实现了将负载分配到适合的节点处理,解决了负载分配不均衡的问题。

Description

一种基于微服务架构的负载分配方法
技术领域
本发明涉及微服务技术领域,具体涉及一种基于微服务架构的负载分配方法。
背景技术
为快速响应复杂的业务需求,实现高效率团队协作,最大化架构扩展能力,微服务体系架构被广泛应用。随之节点数量的大量增加,各个节点需要将负载(用户请求)均衡分配,使得调用方的请求能够得到有效处理。
目前的负载分配方法主要包括基于轮询或加权的分配策略,这些方案均不能很好解决负载分配不均衡的情况。
发明内容
为解决现有技术的不足,本发明实施例提供了一种基于微服务架构的负载分配方法。
本发明实施例提供的基于微服务架构的负载分配方法包括:
根据设定的频率,向注册中心发送微服务架构中各个节点的资源数据及服务数据;
所述注册中心解析各个节点的资源数据及服务数据,得到各个节点的权重及运算效率;
根据公式P=A×Vn+B×Vt,计算各个节点的优先级,其中,A、B为因子,值为常量,Vn为节点的权重,Vt为节点的运算速率;
将当前负载分配给优先级最高的节点。
其中,优先级越高的节点处理负载的能力就越强。
优选地,在将当前负载分配给优先级最高的节点之后,所述方法还包括:
统计所述节点的实际运行耗时;
根据所述实际运行耗时,对所述节点的权重及运算速率进行调整。
优选地,所述方法还包括:
实时检测各个节点中是否存在异常节点,若存在,则摘除所述异常节点。
优选地,所述资源数据包括节点的CPU占用率、内存占用率及已分配的负载大小。
优选地,所述服务数据包括进程的数量和连接用时。
本发明实施例提供的基于微服务架构的负载分配方法,具有以下有益效果:
实现了将负载分配到适合的节点处理,解决了负载分配不均衡的问题。
具体实施方式
以下结合具体实施例对本发明作具体的介绍。
本发明实施例提供的基于微服务架构的负载分配方法,包括以下步骤:
S101,根据设定的频率,向注册中心发送微服务架构中各个节点的资源数据及服务数据。
S102,注册中心解析各个节点的资源数据及服务数据,得到各个节点的权重及运算效率。
S103,根据公式P=A×Vn+B×Vt,计算各个节点的优先级,其中,A、B为因子,值为常量,Vn为节点的权重,Vt为节点的运算速率。
S104,将当前负载分配给优先级最高的节点。
可选地,在将当前负载分配给优先级最高的节点之后,该方法还包括:
统计该节点的实际运行耗时;
根据实际运行耗时,对该节点的权重及运算速率进行调整。
可选地,该方法还包括:
实时检测各个节点中是否存在异常节点,若存在,则摘除所述异常节点。
其中,异常节点包括产生宕机的节点及在设定时间段内无法获取数据的节点。
可选地,资源数据包括节点的CPU占用率、内存占用率及已分配的负载大小。
可选地,服务数据包括进程的数量和连接用时。
本发明公开的基于微服务架构的负载分配方法,根据设定的频率,向注册中心发送微服务架构中各个节点的资源数据及服务数据,注册中心解析各个节点的资源数据及服务数据,得到各个节点的权重及运算效率,计算各个节点的优先级,将当前负载分配给优先级最高的节点,实现了将负载分配到适合的节点处理,解决了负载分配不均衡的问题。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
此外,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (5)

1.一种基于微服务架构的负载分配方法,其特征在于,包括:
根据设定的频率,向注册中心发送微服务架构中各个节点的资源数据及服务数据;
所述注册中心解析各个节点的资源数据及服务数据,得到各个节点的权重及运算效率;
根据公式P=A×Vn+B×Vt,计算各个节点的优先级,其中,A、B为因子,值为常量,Vn为节点的权重,Vt为节点的运算速率;
将当前负载分配给优先级最高的节点。
2.根据权利要求1所述的基于微服务架构的负载分配方法,其特征在于,在将当前负载分配给优先级最高的节点之后,所述方法还包括:
统计所述节点的实际运行耗时;
根据所述实际运行耗时,对所述节点的权重及运算速率进行调整。
3.根据权利要求1所述的基于微服务架构的负载分配方法,其特征在于,所述方法还包括:
实时检测各个节点中是否存在异常节点,若存在,则摘除所述异常节点。
4.根据权利要求1所述的基于微服务架构的负载分配方法,其特征在于,所述资源数据包括节点的CPU占用率、内存占用率及已分配的负载大小。
5.根据权利要求1所述的基于微服务架构的负载分配方法,其特征在于,所述服务数据包括进程的数量和连接用时。
CN202010170571.5A 2020-03-12 2020-03-12 一种基于微服务架构的负载分配方法 Pending CN111324464A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010170571.5A CN111324464A (zh) 2020-03-12 2020-03-12 一种基于微服务架构的负载分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010170571.5A CN111324464A (zh) 2020-03-12 2020-03-12 一种基于微服务架构的负载分配方法

Publications (1)

Publication Number Publication Date
CN111324464A true CN111324464A (zh) 2020-06-23

Family

ID=71165659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010170571.5A Pending CN111324464A (zh) 2020-03-12 2020-03-12 一种基于微服务架构的负载分配方法

Country Status (1)

Country Link
CN (1) CN111324464A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000469A (zh) * 2020-08-06 2020-11-27 山东师范大学 保证关键微服务性能质量和降低机器功耗的方法及系统
CN112068956A (zh) * 2020-08-24 2020-12-11 北京首汽智行科技有限公司 一种基于redis缓存的负载均衡方法及服务器

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512363A (zh) * 2002-12-31 2004-07-14 联想(北京)有限公司 提高商务机群可服务性的方法
CN102123087A (zh) * 2011-02-18 2011-07-13 天津博宇铭基信息科技有限公司 快速定标多级转发负载均衡方法及多级转发网络系统
CN104836819A (zh) * 2014-02-10 2015-08-12 阿里巴巴集团控股有限公司 动态负载均衡的方法、系统及监控调度设备
CN105516360A (zh) * 2016-01-19 2016-04-20 苏州帕科泰克物联技术有限公司 一种计算机的负载均衡方法及装置
CN110149395A (zh) * 2019-05-20 2019-08-20 华南理工大学 一种基于海量小文件高并发情况下动态负载均衡方法
CN110602156A (zh) * 2019-03-11 2019-12-20 平安科技(深圳)有限公司 一种负载均衡调度方法及装置
CN110781006A (zh) * 2019-10-28 2020-02-11 重庆紫光华山智安科技有限公司 负载均衡方法、装置、节点及计算机可读存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512363A (zh) * 2002-12-31 2004-07-14 联想(北京)有限公司 提高商务机群可服务性的方法
CN102123087A (zh) * 2011-02-18 2011-07-13 天津博宇铭基信息科技有限公司 快速定标多级转发负载均衡方法及多级转发网络系统
CN104836819A (zh) * 2014-02-10 2015-08-12 阿里巴巴集团控股有限公司 动态负载均衡的方法、系统及监控调度设备
CN105516360A (zh) * 2016-01-19 2016-04-20 苏州帕科泰克物联技术有限公司 一种计算机的负载均衡方法及装置
CN110602156A (zh) * 2019-03-11 2019-12-20 平安科技(深圳)有限公司 一种负载均衡调度方法及装置
CN110149395A (zh) * 2019-05-20 2019-08-20 华南理工大学 一种基于海量小文件高并发情况下动态负载均衡方法
CN110781006A (zh) * 2019-10-28 2020-02-11 重庆紫光华山智安科技有限公司 负载均衡方法、装置、节点及计算机可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000469A (zh) * 2020-08-06 2020-11-27 山东师范大学 保证关键微服务性能质量和降低机器功耗的方法及系统
CN112068956A (zh) * 2020-08-24 2020-12-11 北京首汽智行科技有限公司 一种基于redis缓存的负载均衡方法及服务器

Similar Documents

Publication Publication Date Title
CN110768912B (zh) Api网关限流方法及装置
US20200134762A1 (en) Order group allocation method and device
CN111953780B (zh) 微服务灰度发布方法、装置、设备、系统及存储介质
CN109542641A (zh) 服务调用方法、装置及系统
CN103699445A (zh) 一种任务调度方法、装置及系统
CN111324464A (zh) 一种基于微服务架构的负载分配方法
CN108154298B (zh) 配送任务分配方法、装置、电子设备及计算机存储介质
CN109412875B (zh) zookeeper集群自动维护方法及装置
CN107968810A (zh) 一种服务器集群的资源调度方法、装置和系统
CN107105013B (zh) 文件的处理方法、服务器、终端和系统
TWI686703B (zh) 資料儲存與業務處理的方法及裝置
CN103338230A (zh) 一种业务数据的处理方法及系统
CN110716813A (zh) 数据流处理方法、装置、可读存储介质及处理器
CN106936882A (zh) 一种商品电子交易系统
CN111221653B (zh) 一种服务处理方法、装置及计算机可读存储介质
CN110908803B (zh) 一种基于余弦相似度算法的作业分配方法
CN110989933A (zh) 一种消息队列RocketMq平滑迁移方法
CN106156185B (zh) 一种业务请求执行状态的查询方法、装置及系统
CN115934292A (zh) 微服务应用的调用方法、装置及设备
CN111176844A (zh) 一种金融数据实时在线批量优化方法及系统
US20180373746A1 (en) Table partition configuration method, apparatus and system for database system
US10986036B1 (en) Method and apparatus for orchestrating resources in multi-access edge computing (MEC) network
CN110413427B (zh) 订阅数据拉取方法、装置、设备及存储介质
CN110618863A (zh) 一种基于Raft算法的作业调度方法
CN110620703A (zh) 一种基于http的服务节点状态确定方法

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