CN108319501A - 一种基于微服务网关的弹性资源供给方法及系统 - Google Patents
一种基于微服务网关的弹性资源供给方法及系统 Download PDFInfo
- Publication number
- CN108319501A CN108319501A CN201711435322.9A CN201711435322A CN108319501A CN 108319501 A CN108319501 A CN 108319501A CN 201711435322 A CN201711435322 A CN 201711435322A CN 108319501 A CN108319501 A CN 108319501A
- Authority
- CN
- China
- Prior art keywords
- service
- time
- following
- period
- load condition
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000004044 response Effects 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000001816 cooling Methods 0.000 claims abstract description 3
- 230000008569 process Effects 0.000 claims description 11
- 238000010801 machine learning Methods 0.000 claims description 3
- 238000012731 temporal analysis Methods 0.000 claims description 3
- 238000000700 time series analysis Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/505—Allocation 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种基于微服务网关的弹性资源供给方法,包括以下步骤:S1.数据采集器周期性从网关处统计用户访问的记录详情,通过对记录详情的预处理,统计出各服务的响应时间;S2.服务调度器周期性向数据采集器请求统计到的各个服务的响应时间数据,然后分别基于各个服务的响应时间数据构建相应的预测模型,对各个服务未来一段时间内的响应时间数据进行预测;S3.服务调度器根据预测的响应时间数据判断各个服务在未来一段时间内的负载状态,形成负载列表,交由调度执行器处理;S4.调度执行器获得负载列表,结合服务间的调用拓扑关系简化负载列表,保护冷却时间时间内服务调度,然后根据简化后的负载列表执行相应的调度。
Description
技术领域
本发明涉及互联网技术领域,更具体地,涉及一种基于微服务网关的弹性资源供给方法及系统,适用于微服务框架服务负载调度领域,用于解决突发负载场景下的容器资源弹性供给问题。
背景技术
互联网发展日新月异,集群技术不断更新换代,传统的单体式应用随着时间推移,弊端不断显现。微服务架构(Microservice)顺应了互联网应用设计的思想,其细粒度模块划分、服务化接口封装、轻量级(Restful)通信交互,具有以下优势:(1)模块自治性强、复杂度可控,模块单独开发、更新、部署,更好的适应互联网发展要求;(2)模块扩展性好、容错性高,能很好满足需求变化日趋频繁的要求,以及用户量难预测,资源动态分配的需求;(3)配合服务发现、负载均衡,能将服务进行横向扩展,提高服务的并行处理能力。
面对激增的互联网用户,微服务集群中的某些服务随时面临着负载过大的情况。当微服务集群中的服务面临过大负载时,用户将面临等待时间过长,或者出现拒绝访问的情况。当微服务集群中某些服务面对大量、频繁负载时,现阶段一方面可以通过提高部署这些微服务的服务器处理性能,来提高集群整理性能,但单个服务器性能有上限,因此微服务总体性能也有上限;另一方面,可以通过适当扩展容器实例、扩大微服务集群容量来提高集群的整体性能,这种方法更加灵活、方便。
在面对动态的负载变化时,一方面,要保证服务的可用性和减少用户请求的等待时间,保证服务质量。另外一方面,要最大化发挥资源价值,避免造成浪费。由于在同一时间内,不同服务的负载是不一的,因此提出一种合理的服务资源调度方案,以尽可能的减少资源损耗而保证用户服务质量变得非常关键。
发明内容
本发明通过对现有的微服务负载调度的研究,借助新兴的Docker容器技术轻量化,启动快等特点,提出一种基于微服务网关的弹性资源供给方法,在负载变化的情况下,以用户实际响应时间为依据,采用实时响应式伸缩容器,最终优化资源利用保证服务质量。
为实现以上发明目的,采用的技术方案是:
一种基于微服务网关的弹性资源供给方法,包括以下步骤:
S1.数据采集器周期性从网关处统计用户访问的记录详情,通过对记录详情的预处理,统计出各服务的响应时间;
S2.服务调度器周期性向数据采集器请求统计到的各个服务的响应时间数据,然后分别基于各个服务的响应时间数据构建相应的预测模型,对各个服务未来一段时间内的响应时间数据进行预测;
S3.服务调度器根据预测的响应时间数据判断各个服务在未来一段时间内的负载状态,形成负载列表,交由调度执行器处理;
S4.调度执行器获得负载列表,结合服务间的调用拓扑关系简化负载列表,保护冷却时间时间内服务调度,然后根据简化后的负载列表执行相应的调度。
优选地,所述步骤S2基于时序分析方法、机器学习方法、模式匹配方法或自回归时间序列方法构建预测模型。
优选地,所述步骤S2基于自回归时间序列方法构建预测模型的具体过程如下:
其中Xt为待预测的响应时间数据,为待估计的自回归系数,随机项ut是相互独立的白噪声序列,且服从均值为0、方差为σ2的正态分布;Xt-1,…,Xt-p为数据采集器统计到的服务在不同时刻的响应时间数据。
优选地,所述步骤S3判断各个服务在未来一段时间内的负载状态的具体过程如下:
Sup=Cover>k1×N?true:false
Sdown=Crelax>k2×N?true:false
其中Cover表示服务在未来一段时间内响应时间大于或等于限制值Rlimit的时刻点的数量,rj表示未来一段时间内的第j个时刻点,N表示未来一段时间内的时刻点的数量;k1为设定的系数,当Sup为true时,判定服务在未来一段时间内的负载状态为高负载状态,当Sup为false时,判定服务在未来一段时间内的负载状态为非高负载状态;Crelax表示服务在未来一段时间内响应时间小于或等于限制值Rlower的时刻点的数量,k2为设定的系数,当Sdown为true时,判定服务在未来一段时间内的负载状态为低负载状态,当Sdown为false时,判定服务在未来一段时间内的负载状态为非低负载状态。
优选地,所述步骤S4简化负载列表的具体过程如下:
对于未来一段时间内为高负载状态的服务,若高负载状态的服务Xi、Xj之间存在着相互调用关系,则按以下方法进行简化:
其中LISTover表示高负载状态的服务列表,Xi归因于Xj表示服务Xi存在调用服务Xj;
同时本发明还提供了一种应用以上方法的系统,其具体的方案如下:包括数据采集器、服务调度器、调度执行器。
附图说明
图1为方法的流程示意图。
图2为判断各个服务在未来一段时间内的负载状态的具体过程图。
图3为简化的示例图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
以下结合附图和实施例对本发明做进一步的阐述。
实施例1
本发明提供了一种基于微服务网关的弹性资源供给方法,如图1所示,其具体的方案如下:
步骤一、数据采集器周期性从网关处统计用户访问的记录详情,通过对记录详情进行分类、加权等的预处理,统计出各服务的响应时间;数据采集器为了保证调度准确性,应保证获取每个服务的至少一条记录详情,因此在周期内,数据采集器能模拟用户对没有访问的服务进行访问。
步骤二、服务调度器周期性向数据采集器请求统计到的各个服务的响应时间数据,然后分别基于各个服务的响应时间数据构建相应的预测模型,对各个服务未来一段时间内的响应时间数据进行预测。
本实施例中,本发明基于时序分析方法、机器学习方法、模式匹配方法或自回归时间序列方法构建预测模型。其中,基于自回归时间序列方法构建预测模型的具体过程如下:
其中Xt为待预测的响应时间数据,为待估计的自回归系数,随机项ut是相互独立的白噪声序列,且服从均值为0、方差为σ2的正态分布;Xt-1,…,Xt-p为数据采集器统计到的服务在不同时刻的响应时间数据。
步骤三、服务调度器根据预测的响应时间数据判断各个服务在未来一段时间内的负载状态,形成负载列表,交由调度执行器处理。
本实施例中,如图2所示,判断各个服务在未来一段时间内的负载状态的具体过程如下:
Sup=Cover>k1×N?true:false
Sdown=Crelax>k2×N?true:false
其中Cover表示服务在未来一段时间内响应时间大于或等于限制值Rlimit的时刻点的数量,rj表示未来一段时间内的第j个时刻点,N表示未来一段时间内的时刻点的数量;k1为设定的系数,当Sup为true时,判定服务在未来一段时间内的负载状态为高负载状态,当Sup为false时,判定服务在未来一段时间内的负载状态为非高负载状态;Crelax表示服务在未来一段时间内响应时间小于或等于限制值Rlower的时刻点的数量,k2为设定的系数,当Sdown为true时,判定服务在未来一段时间内的负载状态为低负载状态,当Sdown为false时,判定服务在未来一段时间内的负载状态为非低负载状态。
步骤四、调度执行器获得负载列表,结合服务间的调用拓扑关系简化负载列表,保护冷却时间时间内服务调度,然后根据简化后的负载列表执行相应的调度。
本实施例中,简化负载列表的具体过程如下:
对于未来一段时间内为高负载状态的服务,若高负载状态的服务Xi、Xj之间存在着相互调用关系,则按以下方法进行简化:
其中LISTover表示高负载状态的服务列表,Xi归因于Xj表示服务Xi存在调用服务Xj;
基本原理如图3示例:高负载状态的服务s1、s2、s3、s4,假设实际高负载状态的服务为s2、s3、s4。第一次执行调度简化结果将为s3、s4,假设s3、s4达到要求,剩下的高负载状态的服务为s1,s2,再一次简化的结果将为s2。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (6)
1.一种基于微服务网关的弹性资源供给方法,其特征在于:包括以下步骤:
S1.数据采集器周期性从网关处统计用户访问的记录详情,通过对记录详情的预处理,统计出各服务的响应时间;
S2.服务调度器周期性向数据采集器请求统计到的各个服务的响应时间数据,然后分别基于各个服务的响应时间数据构建相应的预测模型,对各个服务未来一段时间内的响应时间数据进行预测;
S3.服务调度器根据预测的响应时间数据判断各个服务在未来一段时间内的负载状态,形成负载列表,交由调度执行器处理;
S4.调度执行器获得负载列表,结合服务间的调用拓扑关系简化负载列表,保护冷却时间时间内服务调度,然后根据简化后的负载列表执行相应的调度。
2.根据权利要求1所述的基于微服务网关的弹性资源供给方法,其特征在于:所述步骤S2基于时序分析方法、机器学习方法、模式匹配方法或自回归时间序列方法构建预测模型。
3.根据权利要求2所述的基于微服务网关的弹性资源供给方法,其特征在于:所述步骤S2基于自回归时间序列方法构建预测模型的具体过程如下:
其中Xt为待预测的响应时间数据,为待估计的自回归系数,随机项ut是相互独立的白噪声序列,且服从均值为0、方差为σ2的正态分布;Xt-1,…,Xt-p为数据采集器统计到的服务在不同时刻的响应时间数据。
4.根据权利要求2所述的基于微服务网关的弹性资源供给方法,其特征在于:所述步骤S3判断各个服务在未来一段时间内的负载状态的具体过程如下:
Sup=Cover>k1×N?true:false
Sdown=Crelax>k2×N?true:false
其中Cover表示服务在未来一段时间内响应时间大于或等于限制值Rlimit的时刻点的数量,rj表示未来一段时间内的第j个时刻点,N表示未来一段时间内的时刻点的数量;k1为设定的系数,当Sup为true时,判定服务在未来一段时间内的负载状态为高负载状态,当Sup为false时,判定服务在未来一段时间内的负载状态为非高负载状态;Crelax表示服务在未来一段时间内响应时间小于或等于限制值Rlower的时刻点的数量,k2为设定的系数,当Sdown为true时,判定服务在未来一段时间内的负载状态为低负载状态,当Sdown为false时,判定服务在未来一段时间内的负载状态为非低负载状态。
5.根据权利要求4所述的基于微服务网关的弹性资源供给方法,其特征在于:所述步骤S4简化负载列表的具体过程如下:
对于未来一段时间内为高负载状态的服务,若高负载状态的服务Xi、Xj之间存在着相互调用关系,则按以下方法进行简化:
其中LISTover表示高负载状态的服务列表,Xi归因于Xj表示服务Xi存在调用服务Xj。
6.一种根据权利要求1~5任一项所述方法的系统,其特征在于:包括数据采集器、服务调度器、调度执行器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711435322.9A CN108319501B (zh) | 2017-12-26 | 2017-12-26 | 一种基于微服务网关的弹性资源供给方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711435322.9A CN108319501B (zh) | 2017-12-26 | 2017-12-26 | 一种基于微服务网关的弹性资源供给方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108319501A true CN108319501A (zh) | 2018-07-24 |
CN108319501B CN108319501B (zh) | 2022-01-14 |
Family
ID=62892889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711435322.9A Active CN108319501B (zh) | 2017-12-26 | 2017-12-26 | 一种基于微服务网关的弹性资源供给方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108319501B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109584390A (zh) * | 2018-11-26 | 2019-04-05 | 东南大学 | 一种基于微服务的高速公路计费系统 |
CN109618002A (zh) * | 2019-01-11 | 2019-04-12 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
CN114363153A (zh) * | 2020-09-27 | 2022-04-15 | 中国电信股份有限公司 | 熔断器和服务的自适应熔断方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279771A (zh) * | 2011-09-02 | 2011-12-14 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
CN102739469A (zh) * | 2012-05-28 | 2012-10-17 | 重庆大学 | 一种基于时间序列的Web服务响应时间预测方法 |
CN104506609A (zh) * | 2014-12-22 | 2015-04-08 | 合一网络技术(北京)有限公司 | 自动监测服务器状态并自适应调整服务的方法及其装置 |
CN106502799A (zh) * | 2016-12-30 | 2017-03-15 | 南京大学 | 一种基于长短时记忆网络的主机负载预测方法 |
CN106528266A (zh) * | 2016-10-28 | 2017-03-22 | 柏域信息科技(上海)有限公司 | 一种云计算系统中的资源动态调整方法及装置 |
CN107045455A (zh) * | 2017-06-19 | 2017-08-15 | 华中科技大学 | 一种基于负载预测的Docker Swarm集群资源调度优化方法 |
-
2017
- 2017-12-26 CN CN201711435322.9A patent/CN108319501B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279771A (zh) * | 2011-09-02 | 2011-12-14 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
CN102739469A (zh) * | 2012-05-28 | 2012-10-17 | 重庆大学 | 一种基于时间序列的Web服务响应时间预测方法 |
CN104506609A (zh) * | 2014-12-22 | 2015-04-08 | 合一网络技术(北京)有限公司 | 自动监测服务器状态并自适应调整服务的方法及其装置 |
CN106528266A (zh) * | 2016-10-28 | 2017-03-22 | 柏域信息科技(上海)有限公司 | 一种云计算系统中的资源动态调整方法及装置 |
CN106502799A (zh) * | 2016-12-30 | 2017-03-15 | 南京大学 | 一种基于长短时记忆网络的主机负载预测方法 |
CN107045455A (zh) * | 2017-06-19 | 2017-08-15 | 华中科技大学 | 一种基于负载预测的Docker Swarm集群资源调度优化方法 |
Non-Patent Citations (1)
Title |
---|
常德成: "移动云计算环境下网络感知的虚拟机放置算法研究", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109584390A (zh) * | 2018-11-26 | 2019-04-05 | 东南大学 | 一种基于微服务的高速公路计费系统 |
CN109584390B (zh) * | 2018-11-26 | 2021-04-27 | 东南大学 | 一种基于微服务的高速公路计费系统 |
CN109618002A (zh) * | 2019-01-11 | 2019-04-12 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
CN114363153A (zh) * | 2020-09-27 | 2022-04-15 | 中国电信股份有限公司 | 熔断器和服务的自适应熔断方法 |
CN114363153B (zh) * | 2020-09-27 | 2024-01-26 | 中国电信股份有限公司 | 熔断器和服务的自适应熔断方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108319501B (zh) | 2022-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103699445B (zh) | 一种任务调度方法、装置及系统 | |
CN110231976B (zh) | 一种基于负载预测的边缘计算平台容器部署方法及系统 | |
CN106790726A (zh) | 一种基于Docker云平台的优先级队列动态反馈负载均衡资源调度方法 | |
CN110493360A (zh) | 多服务器下降低系统能耗的移动边缘计算卸载方法 | |
CN108319501A (zh) | 一种基于微服务网关的弹性资源供给方法及系统 | |
CN104902001B (zh) | 基于操作系统虚拟化的Web请求负载均衡方法 | |
CN106095531B (zh) | 云平台中一种基于等级和物理机负载的虚拟机调度方法 | |
CN104765642B (zh) | 云环境下基于动态预测模型的虚拟机部署方法及系统 | |
CN109783225B (zh) | 一种多租户大数据平台的租户优先级管理方法及系统 | |
CN109343931B (zh) | 一种在IaaS环境中面向负载均衡的应用感知虚拟机调度方法 | |
CN105491150A (zh) | 基于时间序列的负载均衡处理方法及系统 | |
Guan et al. | A novel mobility-aware offloading management scheme in sustainable multi-access edge computing | |
CN109417714A (zh) | 基于分析的策略生成 | |
CN113806018A (zh) | 基于神经网络和分布式缓存的Kubernetes集群资源混合调度方法 | |
Hao et al. | iTaskOffloading: Intelligent task offloading for a cloud-edge collaborative system | |
Squillante et al. | Threshold-based priority policies for parallel-server systems with affinity scheduling | |
CN116820784B (zh) | 一种面向推理任务QoS的GPU实时调度方法及系统 | |
Saravanan et al. | Advance Map Reduce Task Scheduling algorithm using mobile cloud multimedia services architecture | |
Chen et al. | Heterogeneous semi-asynchronous federated learning in Internet of Things: A multi-armed bandit approach | |
CN104346220B (zh) | 一种任务调度方法与系统 | |
CN105045667A (zh) | 一种用于虚拟机vCPU调度的资源池管理方法 | |
CN109783236A (zh) | 用于输出信息的方法和装置 | |
CN106201711B (zh) | 一种任务处理方法及服务器 | |
CN108234617A (zh) | 一种面向电力系统混合云模式下的资源动态调度方法 | |
Li et al. | Delay-aware resource allocation for data analysis in cloud-edge system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |