基于微服务的多任务分布调度系统的制作方法

专利检索2022-05-11  2



1.本发明属于微服务领域,涉及任务分布调度技术,具体是基于微服务的多任务分布调度系统。


背景技术:

2.微服务(或微服务架构)是一种云原生架构方法,其中单个应用程序由许多松散耦合且可独立部署的较小组件或服务组成。维基上对其定义为:一种软件开发技术-面向服务的体系结构(soa)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务于服务间采用轻量级的通信机制互相沟通。每个服务都围绕着具体业务进行构建,并且能够独立地部署到生产环境、类生产环境等。另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建。
3.现有技术中,在一个通信域中本地服务器存在着大量的计算任务,当本地服务器的计算资源不足或者计算任务超过本地服务器的计算规模,则需要将计算任务推送至其它通信域内的边缘服务器上执行,但是在推送过程中,由于无法知晓其他通信域中边缘服务器的处理能力和性能,导致推送过来的计算任务在其他通信域内的边缘服务器仍无法处理,推送的计算任务与异地边缘服务器的处理能力无法匹配,计算任务调度不合理,资源没有合理化分配;
4.同时,本地服务器在进行多任务处理时,无法将计算任务进行有序处理,导致计算任务处理缓慢,进而造成本地服务器的负荷处理,为此,我们提出基于微服务的多任务分布调度系统。


技术实现要素:

5.针对现有技术存在的不足,本发明目的是提供基于微服务的多任务分布调度系统。
6.本发明所要解决的技术问题为:
7.(1)本地服务器如何将多计算任务进行有序处理;
8.(2)本地服务器如何将计算任务推送至处理相匹配的异地边缘服务器。
9.本发明的目的可以通过以下技术方案实现:
10.基于微服务的多任务分布调度系统,包括本地服务器、用户终端、智能调度模块、任务分布模块、任务排序模块、性能监测模块、交换机、数据采集模块以及边缘服务器组;
11.所述用户终端用于用户发起请求任务,并将请求任务加载至对应的本地服务器,所述数据采集模块用于采集通信域中请求任务的任务信息,并将任务信息发送至本地服务器,所述本地服务器将请求任务的任务信息发送至任务分类模块,所述任务分类模块用于将请求任务进行任务分类,请求任务划分为文字浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务和混合浏览请求任务,并得到对应的分类集以及分类集相
应的排序系数;
12.所述任务分类模块将浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、混合浏览请求任务以及对应的排序系数反馈至本地服务器,所述本地服务器将浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、混合浏览请求任务以及对应的排序系数发送至任务排序模块,所述任务排序模块用于将请求任务进行排序,计算得到请求任务的排序值,所述任务排序模块将请求任务的排序值反馈至本地服务器,所述本地服务器依据排序值依次处理的请求任务;
13.若本地服务器的处理能力达到限定值或计算的任务规模过大,则将请求任务的排序值发送至智能调度模块,所述本地服务器与边缘服务器组相连接,所述边缘服务器组包括若干个边缘服务器和边缘服务器对应的边缘节点;
14.所述数据采集模块还用于采集边缘服务器组中若干个边缘服务器的服务器数据,并将服务器数据发送至本地服务器,所述本地服务器将服务器数据发送至性能监测模块,所述性能监测模块接收到本地服务器发送的服务器数据后,所述性能监测模块用于对边缘服务器进行环境监测,得到边缘服务器的性能等级,所述性能监测模块将边缘服务器的性能等级反馈至本地服务器,所述本地服务器将边缘服务器的性能等级反馈至智能调度模块,所述智能调度模块用于对本地服务器中的请求任务进行智能调度。
15.进一步地,任务信息包括任务生成时间、任务类型和网速下限值;
16.服务器数据包括边缘服务器的请求任务、实时下载网速、地理位置、宕机次数。
17.进一步地,分类集包括文字集、图片集、音频集、视频集和混合集,文字集、图片集、音频集、视频集、混合集设定有固定数值的排序系数,并且文字集的排序系数小于图片集的排序系数、图片集的排序系数小于音频集的排序系数、音频集的排序系数小于视频集的排序系数、视频集的排序系数小于混合集的排序系数。
18.进一步地,所述任务排序模块的排序过程具体如下:
19.步骤一:将各任务类型的请求任务标记为u,u=1,2,
……
,z,z为正整数;获取请求任务的任务生成时间,利用系统当前时间减去任务生成时间得到请求任务得到生成时长标记为tcu;
20.步骤二:获取请求任务的排序系数,并将请求任务的排序系数标记为xsu;
21.步骤三:获取请求任务的网速下限值,并将网速下限值标记为wsxu;
22.步骤四:利用公式计算得到请求任务的排序值 pxu;式中,a1和a2为固定数值的比例系数,且a1和a2的取值均大于零。
23.进一步地,所述性能监测模块的工作过程具体如下:
24.步骤ss1:将边缘服务器标记为i,i=1,2,
……
,x,x为正整数;获取边缘服务器当前处理的请求任务,统计请求任务的数量记为任务数rwsi;
25.步骤ss2:边缘服务器中每个当前处理请求任务的实时下载网速相加求和除以任务数,得到边缘服务器的下载均速xjsi;
26.步骤ss3:获取请求任务连接边缘服务器的时间和边缘服务器发送数据至本地服务器的时间,利用时间差计算得到边缘服务器的响应时间xyti;
27.步骤ss4:利用公式计算得到边缘服务器的处理值cli,公式具体如下:
28.式中,α和β均为固定数值的修正因子,且α和β的取值均大于零;
29.步骤ss5:获取边缘服务器的cpu利用率lyi、数据传输时间scti和宕机次数dji;
30.步骤ss6:将边缘服务器的处理值代入计算式计算得到边缘服务器的性能值xni;式中,b1、b2和b3均为固定数值的比例系数,且b1、b2和b3的取值均大于零;
31.步骤ss7:若xni<x1,则边缘服务器的性能等级为低性能边缘服务器;
32.若x1≤xni<x2,则边缘服务器的性能等级为中性能边缘服务器;
33.若x2≤xni,则边缘服务器的性能等级为高性能边缘服务器;其中,x1和x3均为性能阈值,且x1<x2。
34.进一步地,低性能边缘服务器用于处理文字浏览请求任务,中性能边缘服务器用于处理图片浏览请求任务和音频浏览请求任务,高性能边缘服务器用于处理视频浏览请求任务和混合浏览请求任务。
35.进一步地,文字浏览请求任务划分至文字集,图片浏览请求任务划分至图片集,音频浏览请求任务划分至音频集,视频浏览请求任务划分至视频集,混合浏览请求任务划分至混合集。
36.进一步地,所述智能调度模块的智能调度过程具体如下:
37.步骤p1:获取本地服务器的cpu利用率,若本地服务器的cpu利用率未超过设定阈值,则不进行任何操作;
38.若本地服务器的cpu利用率超过设定阈值,则生成任务异地处理信号,并进入下一步骤;
39.步骤p2:获取请求任务所处的分类集,将处于文字集的请求任务推送至低性能边缘服务器,将处于图片集或音频集的请求任务推送至中性能边缘服务器,将处于视频集或混合集的请求任务推送至高性能边缘服务器;
40.步骤p3:获取低性能边缘服务器中请求任务的排序值、中性能边缘服务器中请求任务的排序值、高性能边缘服务器中请求任务的排序值;
41.步骤p4:智能调度模块通过本地服务器将请求任务的排序值发送至对应的边缘服务器中,边缘服务器依据排序值对请求任务进行依次处理。
42.与现有技术相比,本发明的有益效果是:
43.1、本发明通过性能监测模块对边缘服务器进行环境监测,得到边缘服务器的性能值,性能值比对设定阈值后得到边缘服务器的性能等级器,在本地服务器的计算资源不足或计算的任务规模过大,通过智能调度模块对本地服务器中的请求任务进行智能调度,按照分类集将请求任务发送至对应相对应处理性能的异地边缘服务器,本发明方便将计算任务推送至处理相匹配的异地边缘服务器,从而实现服务器资源的合理化分配;
44.2、本发明通过任务分类模块将请求任务进行任务分类,得到各类型的请求任务、各类型请求任务的分类集和排序系数,排序系数结合任务排序模块将请求任务进行排序得
到请求任务的排序值,本地服务器依据排序值实现请求任务的有序处理,本发明方便本地服务器中多计算任务的有序处理。
附图说明
45.为了便于本领域技术人员理解,下面结合附图对本发明作进一步的说明。
46.图1为本发明的整体系统框图;
47.图2为本发明的应用场景图。
具体实施方式
48.下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
49.请参阅图1-图2所示,基于微服务的多任务分布调度系统,包括本地服务器、用户终端、智能调度模块、任务分布模块、任务排序模块、性能监测模块、交换机、数据采集模块以及边缘服务器组;
50.在具体实施时,计算任务运用到通信域的,在一个通信域中,网关设备上存在着大量的计算任务需要处理,这些任务既可以卸载至本通信域内的本地服务器上执行,也可以在网关设备本地执行。但当本通信域内的本地服务器的计算资源不足或者计算的任务规模过大,网关设备既可以将任务卸载至其它通信域内的普通边缘服务器上执行,又可以卸载到距离网关较远的高性能边缘服务器中,由高性能边缘服务器完成执行。通过这种卸载方式,即可以减少工业设备的能耗,又可以提升工业环境的计算处理能力;
51.具体的,计算任务可以是用户终端的浏览请求任务,例如用户终端访问纯文字的新闻链接、图文并存的新闻链接,因此,浏览请求任务包括文字浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、图文浏览请求任务、文音浏览请求任务、文影浏览请求任务、图音浏览请求任务、图影浏览请求任务和音影浏览请求任务等;
52.所述用户终端用于用户发起请求任务,并将请求任务加载至对应的本地服务器,所述数据采集模块用于采集通信域中请求任务的任务信息,并将任务信息发送至本地服务器;
53.其中,任务信息包括任务生成时间、任务类型、网速下限值等,网速下限值可以表示为请求任务发起所需要的最低网速;
54.所述本地服务器将请求任务的任务信息发送至任务分类模块,所述任务分类模块用于将请求任务进行任务分类,工作过程具体如下:
55.步骤s1:获取本地服务器中的请求任务,得到请求任务的任务类型;
56.步骤s2:依据任务类型将请求任务划分为文字浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务和混合浏览请求任务;
57.需要具体说明的是,混合浏览请求任务包括图文浏览请求任务、文音浏览请求任务、文影浏览请求任务、图音浏览请求任务、图影浏览请求任务和音影浏览请求任务;
58.步骤s3:将文字浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览
请求任务和混合浏览请求任务划分至对应的分类集;
59.其中,文字浏览请求任务划分至文字集,图片浏览请求任务划分至图片集,音频浏览请求任务划分至音频集,视频浏览请求任务划分至视频集,混合浏览请求任务划分至混合集;
60.步骤s4:分别为对应的分类集设定相应的排序系数;
61.在具体实施时,分别为文字集、图片集、音频集、视频集、混合集设定固定数值的排序系数,并且文字集的排序系数小于图片集的排序系数、图片集的排序系数小于音频集的排序系数、音频集的排序系数小于视频集的排序系数、视频集的排序系数小于混合集的排序系数;
62.所述任务分类模块将浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、混合浏览请求任务以及对应的排序系数反馈至本地服务器,所述本地服务器将浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、混合浏览请求任务以及对应的排序系数发送至任务排序模块;
63.在具体实施时,所述任务排序模块用于将请求任务进行排序,排序过程具体如下:
64.步骤一:统一将各任务类型的请求任务标记为u,u=1,2,
……
,z,z为正整数;获取请求任务的任务生成时间,利用系统当前时间减去任务生成时间得到请求任务得到生成时长标记为tcu;
65.步骤二:获取请求任务的排序系数,并将请求任务的排序系数标记为xsu;
66.步骤三:获取请求任务的网速下限值,并将网速下限值标记为wsxu;
67.步骤四:利用公式计算得到请求任务的排序值 pxu;式中,a1和a2为固定数值的比例系数,且a1和a2的取值均大于零;
68.所述任务排序模块将请求任务的排序值反馈至本地服务器,所述本地服务器依据排序值依次处理的请求任务,若本地服务器的处理能力达到限定值或计算的任务规模过大,则将请求任务的排序值发送至智能调度模块;
69.同时,所述本地服务器还通过交换机与其它通信域内边缘服务器组相连接,所述边缘服务器组包括若干个边缘服务器和边缘服务器对应的边缘节点;
70.所述数据采集模块还用于采集边缘服务器组中若干个边缘服务器的服务器数据,并将服务器数据发送至本地服务器,所述本地服务器将服务器数据发送至性能监测模块;
71.需要具体说明的是:服务器数据包括边缘服务器的请求任务、实时下载网速、地理位置、宕机次数等;
72.所述性能监测模块接收到本地服务器发送的服务器数据后,所述性能监测模块用于对边缘服务器进行环境监测,工作过程具体如下:
73.步骤ss1:将边缘服务器标记为i,i=1,2,
……
,x,x为正整数;获取边缘服务器当前处理的请求任务,统计请求任务的数量记为任务数rwsi;
74.步骤ss2:边缘服务器中每个当前处理请求任务的实时下载网速相加求和除以任务数,得到边缘服务器的下载均速xjsi;
75.步骤ss3:获取请求任务连接边缘服务器的时间和边缘服务器发送数据至本地服务器的时间,利用时间差计算得到边缘服务器的响应时间xyti;
76.步骤ss4:利用公式计算得到边缘服务器的处理值cli,公式具体如下:
77.式中,α和β均为固定数值的修正因子,且α和β的取值均大于零;
78.步骤ss5:获取边缘服务器的cpu利用率,并将cpu利用率标记为lyi;获取边缘服务器的地理位置和本地服务器的地理位置,通过距离公式计算得到间隔距离,间隔距离比对数据传输速率后得到边缘服务器的数据传输时间scti;统计边缘服务器的宕机次数,并将宕机次数标记为dji;
79.其中,数据传输速率是通过信道每秒可传输的数字信息量的量度,也称为吞吐率。数据传输速率由很多因素,包括线路带宽、传输减损、距离、媒体类型等决定;cpu利用率指的是程序在运行期间实时占用的cpu百分比;
80.步骤ss6:将边缘服务器的处理值代入计算式计算得到边缘服务器的性能值xni;式中,b1、b2和b3均为固定数值的比例系数,且b1、b2和b3的取值均大于零;
81.步骤ss7:若xni<x1,则边缘服务器的性能等级为低性能边缘服务器;
82.若x1≤xni<x2,则边缘服务器的性能等级为中性能边缘服务器;
83.若x2≤xni,则边缘服务器的性能等级为高性能边缘服务器;其中,x1和 x3均为性能阈值,且x1<x2;
84.在具体实施时,当本通信域内本地服务器的计算资源不足或者计算的任务规模过大,本地服务器可以将任务卸载至其它通信域内的普通边缘服务器上执行,也可以卸载到距离网关较远的高性能边缘服务器中,由高性能边缘服务器完成执行,所述性能监测模块将边缘服务器的性能等级反馈至本地服务器,所述本地服务器将边缘服务器的性能等级反馈至智能调度模块,所述智能调度模块用于对本地服务器中的请求任务进行智能调度,智能调度过程具体如下:
85.步骤p1:获取本地服务器的cpu利用率,若本地服务器的cpu利用率未超过设定阈值,则不进行任何操作;
86.若本地服务器的cpu利用率超过设定阈值,则生成任务异地处理信号,并进入下一步骤;
87.步骤p2:获取请求任务所处的分类集,将处于文字集的请求任务推送至低性能边缘服务器,将处于图片集或音频集的请求任务推送至中性能边缘服务器,将处于视频集或混合集的请求任务推送至高性能边缘服务器;
88.具体的,低性能边缘服务器用于处理文字浏览请求任务,中性能边缘服务器用于处理图片浏览请求任务和音频浏览请求任务,高性能边缘服务器用于处理视频浏览请求任务和混合浏览请求任务;
89.步骤p3:获取低性能边缘服务器中请求任务的排序值、中性能边缘服务器中请求任务的排序值、高性能边缘服务器中请求任务的排序值;
90.步骤p4:智能调度模块通过本地服务器将请求任务的排序值发送至对应的边缘服
务器中;
91.所述边缘服务器依据排序值对请求任务进行依次处理。
92.基于微服务的多任务分布调度系统,工作时,用户终端用于用户发起请求任务,并将请求任务加载至对应的本地服务器,同时数据采集模块采集通信域中请求任务的任务信息,并将任务信息发送至本地服务器,本地服务器将请求任务的任务信息发送至任务分类模块,任务分类模块将请求任务进行任务分类,获取当前服务器中的请求任务,得到请求任务的任务类型,依据任务类型将请求任务划分为文字浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务和混合浏览请求任务,将文字浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务和混合浏览请求任务划分至对应的分类集,分别为对应的分类集设定相应的排序系数,任务分类模块将浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、混合浏览请求任务以及对应的排序系数反馈至本地服务器,本地服务器将浏览请求任务、图片浏览请求任务、音频浏览请求任务、视频浏览请求任务、混合浏览请求任务以及对应的排序系数发送至任务排序模块;
93.任务排序模块将请求任务进行排序,统一将各任务类型的请求任务标记为u,获取请求任务的生成时长tcu、排序系数xsu和网速下限值wsxu,利用公式计算得到请求任务的排序值pxu,任务排序模块将请求任务的排序值反馈至本地服务器,本地服务器依据排序值依次处理的请求任务,若本地服务器的处理能力达到限定值或计算的任务规模过大,则将请求任务的排序值发送至智能调度模块;
94.同时,本地服务器还通过交换机与其它通信域内边缘服务器组相连接,数据采集模块还采集边缘服务器组中若干个边缘服务器的服务器数据,并将服务器数据发送至本地服务器,本地服务器将服务器数据发送至性能监测模块,通过性能监测模块对边缘服务器进行环境监测,获取边缘服务器当前处理的任务数rwsi、边缘服务器的下载均速xjsi和响应时间xyti,利用公式计算得到边缘服务器的处理值cli,而后获取边缘服务器的cpu利用率lyi、数据传输时间scti和宕机次数dji,将边缘服务器的处理值代入计算式计算得到边缘服务器的性能值xni,若xni<x1,则边缘服务器的性能等级为低性能边缘服务器,若x1≤xni<x2,则边缘服务器的性能等级为中性能边缘服务器,若x2≤xni,则边缘服务器的性能等级为高性能边缘服务器,性能监测模块将边缘服务器的性能等级反馈至本地服务器;
95.当本通信域内本地服务器的计算资源不足或者计算的任务规模过大,本地服务器将边缘服务器的性能等级反馈至智能调度模块,通过智能调度模块对本地服务器中的请求任务进行智能调度,获取本地服务器的cpu利用率,若本地服务器的cpu利用率未超过设定阈值,则不进行任何操作,若本地服务器的cpu 利用率超过设定阈值,则生成任务异地处理信号,则获取请求任务所处的分类集,将处于文字集的请求任务推送至低性能边缘服务器,将处于图片集或音频集的请求任务推送至中性能边缘服务器,将处于视频集或混合集的请
求任务推送至高性能边缘服务器,而后获取低性能边缘服务器中请求任务的排序值、中性能边缘服务器中请求任务的排序值、高性能边缘服务器中请求任务的排序值,智能调度模块通过本地服务器将请求任务的排序值发送至对应的边缘服务器中,边缘服务器依据排序值对请求任务进行依次处理。
96.上述公式均是采集大量数据进行软件模拟得出且选取与真实值接近的一个公式,公式中的系数是由本领域技术人员根据实际情况进行设置;
97.如公式:
98.由本领域技术人员采集多组样本数据并对每一组样本数据设定对应的评级系数;将设定的评级系数和采集的样本数据代入公式,任意两个公式构成二元一次方程组,将计算得到的系数进行筛选并取均值,得到v1与v2取值分别为 1.2111和0.14644;
99.系数的大小是为了将各个参数进行量化得到的一个具体的数值,便于后续比较,关于系数的大小,取决于样本数据的多少及本领域技术人员对每一组样本数据初步设定对应的湿度系数;只要不影响参数与量化后数值的比例关系即可。
100.以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
转载请注明原文地址:https://win.8miu.com/read-1050339.html

最新回复(0)