CN109788046B - 一种基于改进蜂群算法的多策略边缘计算资源调度方法 - Google Patents
一种基于改进蜂群算法的多策略边缘计算资源调度方法 Download PDFInfo
- Publication number
- CN109788046B CN109788046B CN201811637049.2A CN201811637049A CN109788046B CN 109788046 B CN109788046 B CN 109788046B CN 201811637049 A CN201811637049 A CN 201811637049A CN 109788046 B CN109788046 B CN 109788046B
- Authority
- CN
- China
- Prior art keywords
- edge node
- node server
- candidate edge
- type index
- candidate
- 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.)
- Active
Links
Images
Abstract
本发明涉及一种基于改进蜂群算法的多策略边缘计算资源调度方法,主要体现在:第一,改进蜂群算法充分发挥边缘计算平台弹性扩展的优势,使得边缘节点服务器的选择范围不再受限;第二,采用两级更新的优选调度方式,先通过各候选边缘节点服务器的自扩展与替换,实现候选边缘节点服务器的一级更新;再通过***随机扩展方式,实现候选边缘节点服务器的二级更新,及时填补候选边缘节点服务器集合中的空缺;第三,改进蜂群算法思想的引入,有效避免了某候选边缘节点服务器被频繁选中进行容器调度,从而导致该候选边缘节点服务器负载过大的情况,实现了各候选边缘节点服务器间的负载均衡,增强***可用性与稳定性。
Description
技术领域
本发明涉及一种基于改进蜂群算法的多策略边缘计算资源调度方法,属于边缘计算技术与物联网技术应用结合技术领域。
背景技术
边缘计算是一种按使用量付费的模式,不同于传统云计算,边缘计算在终端设备所产生的数据源及云计算数据中心之间增加了一层“边缘”层,边缘层主要由一些性能不一、更加分散的计算机***组成,这些计算机***被称为边缘节点。计算任务在接近数据源的边缘计算节点上执行,通过互联网共享计算、存储、数据及应用资源,为其他设备提供优化的计算服务。边缘计算架构下通过在网络边缘设备上部署实施数据处理的边缘计算平台对外提供一套完善可用的服务及功能接口,以在网络边缘侧处理终端设备所产生的数据,从而实现请求响应的实时性,不仅降低了服务时延,也减少了网络传输带宽负载,避免网络延迟。在实际数据处理过程中,部署到边缘节点的计算任务的***资源需求较少,对于资源密集型计算任务,边缘节点因***资源受限不支持其部署运行,故此类任务转移至云端执行。因此,边缘计算架构的管理***需要一种高资源需求的任务部署算法以实现将高实时性需求的任务合理部署至边缘节点或云节点的任务分配与调度策略,以使得任务的调度部署达到最优化。
边缘计算中的任务调度算法总体上实现两大功能:预选和优选。现有的大多数优选调度算法思想,如LeastRequestedPriority、ServiceSpreadingPriority和EqualPriority,多是对已有节点的调度优先级评判,并没有一种可以弹性扩展的调度方案。例如(1)LeastRequestedPriority算法基本思想是将容器调度到空闲资源较多的节点上,包括CPU资源及内存资源占用情况的考量,并将两者剩余可用资源占总资源的比值求和再取算术平均值作为各节点的调度优先级,分值越高即调度优先级越高。(2)ServiceSpreadingPriority调度算法的原则是使隶属于同一服务的容器分散调度在不同的计算节点上运行,从而实现服务高可用以及流量负载均衡;(3)EqualPriority调度算法平等对待每一个候选节点,因该算法权值为0,故在实际调度过程中不会调用该优选算法判定节点优先级。由此可见,传统容器调度算法并未利用弹性计算这一大优势,而仅局限在现有节点间的调度。
发明内容
本发明所要解决的技术问题是提供一种基于改进蜂群算法的多策略边缘计算资源调度方法,充分利用边缘框架中的弹性计算优势,考虑到低时延的服务需求,引入改进蜂群算法,在众多候选节点中弹性的选中待扩展的节点,以保障请求及时反馈与***高效运转。
本发明为了解决上述技术问题采用以下技术方案:本发明设计了一种基于改进蜂群算法的多策略边缘计算资源调度方法,将用户终端上封装了待处理任务的待调度容器上传至云端服务器,由云端服务器根据所设计的调度策略决定将待调度容器调度至云端处理或调度至边缘节点服务器处理;云端服务器执行如下步骤:
步骤A.判断与用户终端之间存在通信联系的各个候选边缘节点服务器中,是否存在服务类型与待调度容器类型相同的候选边缘节点服务器,是则将该候选边缘节点服务器作为目标边缘节点服务器,并进入步骤M;否则进入步骤B;
步骤B.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,获取候选边缘节点服务器所对应各个指定类型指标的资源数据,然后进入步骤C;
步骤C.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,针对候选边缘节点服务器所对应各个指定类型指标的资源数据、分别进行编码处理,获得各候选边缘节点服务器分别对应各指定类型指标的编码数据,然后进入步骤D;各指定类型指标包括CPU类型指标、内存类型指标、存储I/O类型指标、以及网络I/O类型指标;
上述步骤C中,分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,按如下公式:
针对候选边缘节点服务器所对应的CPU类型指标和内存类型指标,分别计算指标的编码数据,获得该候选边缘节点服务器分别对应CPU类型指标和内存类型指标的编码数据,进而获得各候选边缘节点服务器分别对应CPU类型指标和内存类型指标的编码数据;其中,A表示CPU类型指标或内存类型指标,valueA表示候选边缘节点服务器对应指定类型指标A的编码数据,capacityA表示候选边缘节点服务器中指定类型指标A的总资源数据,totalA表示候选边缘节点服务器中指定类型指标A的已使用资源数据、与待调度容器对应指定类型指标A的资源需求数据之和;
分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,按如下公式:
针对候选边缘节点服务器所对应的存储I/O类型指标和网络I/O类型指标、分别计算指标的编码数据,获得该候选边缘节点服务器分别对应存储I/O类型指标和网络I/O类型指标的编码数据,进而获得各候选边缘节点服务器分别对应存储I/O类型指标和网络I/O类型指标的编码数据;其中,B表示存储I/O类型指标和网络I/O类型指标,valueB表示候选边缘节点服务器对应指定类型指标B的编码数据,curB表示候选边缘节点服务器对应指定类型指标B的每秒读写操作次数,maxB表示所有候选边缘节点服务器中对应指定类型指标B的每秒读写操作次数的最大值;
步骤D.根据各指定类型指标的预设权重,分别针对各个候选边缘节点服务器,针对候选边缘节点服务器所对应各指定类型指标的编码数据进行加权处理,获得加权值,作为该候选边缘节点服务器所对应的适应度,进而获得各候选边缘节点服务器分别所对应的适应度,然后所有候选边缘节点服务器构成候选服务器集合,并进入步骤E;其中,各指定类型指标的预设权重之和等于1;
步骤E.初始化i=1,然后进入步骤F;
步骤F.分别针对候选服务器集合中的各个候选边缘节点服务器,根据候选边缘节点服务器所对应各个指定类型指标的编码数据,按如下公式:
valueC'=valueC+ran(-1,1)×(valueC-valueCi)
分别计算各个指定类型指标所对应的新编码数据,构成该候选边缘节点服务器所对应的一个新候选边缘节点服务器,进而获得候选服务器集合中各候选边缘节点服务器分别所对应的新候选边缘节点服务器;其中C表示一个指定类型指标,valueC表示候选边缘节点服务器对应指定类型指标C的编码数据,valueC'表示新候选边缘节点服务器对应指定类型指标C的新编码数据,valueCi表示从候选服务器集合中随机选取的某个候选边缘节点服务器对应指定类型指标C的编码数据,ran(-1,1)表示-1至1中的随机数,然后进入步骤G;
步骤G.按步骤D的方法,分别获得各个新候选边缘节点服务器的适应度,然后分别针对候选服务器集合中的各个候选边缘节点服务器,判断候选边缘节点服务器的适应度是否小于其所对应新候选边缘节点服务器的适应度,是则用对应新候选边缘节点服务器替换候选服务器集合中的该候选边缘节点服务器,并更新候选服务器集合;否则不做操作;完成上述对所有新候选边缘节点服务器的判断操作后,进入步骤H;
步骤H.删除候选服务器集合中适应度小于最小适应度预设值MIN的各个候选边缘节点服务器,并更新候选服务器集合,然后进入步骤I;
步骤I.判断上一步骤中是否存在被删除的候选边缘节点服务器,否则直接进入步骤K;是则根据各个指定类型指标的预设最小编码数据值、预设最大编码数据值,按如下公式:
valueD”=minD+ran(0,1)×(maxD-minD)
分别计算获得各个指定类型指标的随机新编码数据,并以随机新编码数据作为新扩展候选边缘节点服务器的适应度,构成各个新扩展候选边缘节点服务器,且新扩展候选边缘节点服务器的数目与上一步骤中被删除候选边缘节点服务器的数目相等,其中D表示一个指定类型指标,valueD”表示候选边缘节点服务器对应指定类型指标D的随机新编码数据,minD表示候选边缘节点服务器对应指定类型指标D的预设最小编码数据值,maxD表示候选边缘节点服务器对应指定类型指标D的预设最大编码数据值;然后针对其中彼此相同的多个新扩展候选边缘节点服务器,仅保留一个,其余删除,更新所获的各个新扩展候选边缘节点服务器,然后进入步骤J;
步骤J.按步骤D的方法,分别获得各新扩展候选边缘节点服务器的适应度,然后针对各个新扩展候选边缘节点服务器,加入、并更新候选服务器集合,再进入步骤K;
步骤K.判断候选服务器集合中是否存在适应度大于或等于最大适应度预设值MAX的候选边缘节点服务器,是则选择最大适应度所对应的候选边缘节点服务器,作为目标边缘节点服务器,并进入步骤M;否则进入步骤L;
步骤L.判断i是否等于I,是则进入步骤P;否则针对i所对应的值进行加1更新,然后返回步骤F;其中,I表示预设最大循环次数;
步骤M.云端服务器将待调度容器调度在目标边缘节点服务器上进行处理,调度结束;
步骤P.云端服务器将待调度容器调度在云端上进行处理,调度结束。
作为本发明的一种优选技术方案:还包括如下步骤N至步骤O,执行完所述步骤M中云端服务器将待调度容器调度在目标边缘节点服务器上进行处理的操作后,进入步骤N;
步骤N.分别针对候选服务器集合中的各个候选边缘节点服务器,判断是否存在服务等待队列长度大于预设最大服务器等待队列长度MAXL的候选边缘节点服务器,是则将该各个候选边缘节点服务器作为待调度候选边缘节点服务器,并进入步骤O;否则调度结束;
步骤O.分别针对各个待调度候选边缘节点服务器,应用改进蜂群算法,从待调度候选边缘节点服务器任意一个相邻候选边缘节点服务器的服务等待队列中随机剪切一个待运行容器,置于该待调度候选边缘节点服务器的服务等待队列的队首,调度结束。
作为本发明的一种优选技术方案,所述各指定类型指标的预设权重如下:
CPU类型指标的权重为0.3,内存类型指标的权重为0.3,存储I/O类型指标的权重为0.2,网络I/O类型指标的权重为0.2。
本发明所述一种基于改进蜂群算法的多策略边缘计算资源调度方法采用以上技术方案与现有技术相比,具有以下技术效果:
本发明所设计一种基于改进蜂群算法的多策略边缘计算资源调度方法,不同于现有的容器调度优选算法,主要体现在:第一,改进蜂群算法充分发挥边缘计算平台弹性扩展的优势,使得边缘节点服务器的选择范围不再受限;第二,采用两级更新的优选调度方式,先通过各候选边缘节点服务器的自扩展与替换,实现候选边缘节点服务器的一级更新;再通过***随机扩展方式,实现候选边缘节点服务器的二级更新,及时填补候选边缘节点服务器集合中的空缺,有效避免候选边缘节点服务器因适应度要求而删除殆尽,从而导致容器无处调度的情况发生;第三,改进蜂群算法思想的引入,有效避免了某候选边缘节点服务器被频繁选中进行容器调度,从而导致该候选边缘节点服务器负载过大的情况,实现了各候选边缘节点服务器间的负载均衡,增强***可用性与稳定性。
附图说明
图1是本发明所设计一种基于改进蜂群算法的多策略边缘计算资源调度方法的框架;
图2为本发明所设计一种基于改进蜂群算法的多策略边缘计算资源调度方法的流程示意图。
具体实施方式
下面结合说明书附图对本发明的具体实施方式作进一步详细的说明。
本发明设计了一种基于改进蜂群算法的多策略边缘计算资源调度方法,将用户终端上封装了待处理任务的待调度容器上传至云端服务器,由云端服务器根据所设计的调度策略决定将待调度容器调度至云端处理或调度至边缘节点服务器处理;如图1和图2所示,云端服务器执行如下步骤:
步骤A.判断与用户终端之间存在通信联系的各个候选边缘节点服务器中,是否存在服务类型与待调度容器类型相同的候选边缘节点服务器,是则将该候选边缘节点服务器作为目标边缘节点服务器,并进入步骤M;否则进入步骤B。
步骤B.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,获取候选边缘节点服务器所对应各个指定类型指标的资源数据,然后进入步骤C。
步骤C.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,针对候选边缘节点服务器所对应各个指定类型指标的资源数据、分别进行编码处理,获得各候选边缘节点服务器分别对应各指定类型指标的编码数据,然后进入步骤D。
步骤D.根据各指定类型指标的预设权重,分别针对各个候选边缘节点服务器,针对候选边缘节点服务器所对应各指定类型指标的编码数据进行加权处理,获得加权值,作为该候选边缘节点服务器所对应的适应度,进而获得各候选边缘节点服务器分别所对应的适应度,然后所有候选边缘节点服务器构成候选服务器集合,并进入步骤E;其中,各指定类型指标的预设权重之和等于1。
步骤E.初始化i=1,然后进入步骤F。
步骤F.分别针对候选服务器集合中的各个候选边缘节点服务器,根据候选边缘节点服务器所对应各个指定类型指标的编码数据,分别计算各个指定类型指标所对应的新编码数据,构成该候选边缘节点服务器所对应的一个新候选边缘节点服务器,进而获得候选服务器集合中各候选边缘节点服务器分别所对应的新候选边缘节点服务器,然后进入步骤G。
步骤G.按步骤D的方法,分别获得各个新候选边缘节点服务器的适应度,然后分别针对候选服务器集合中的各个候选边缘节点服务器,判断候选边缘节点服务器的适应度是否小于其所对应新候选边缘节点服务器的适应度,是则用对应新候选边缘节点服务器替换该选边缘节点服务器、位于候选服务器集合中,并更新候选服务器集合;否则不做操作;完成上述对所有新候选边缘节点服务器的判断操作后,进入步骤H。
步骤H.删除候选服务器集合中适应度小于最小适应度预设值MIN的各个候选边缘节点服务器,并更新候选服务器集合,然后进入步骤I。
步骤I.判断上一步骤中是否存在被删除的候选边缘节点服务器,是则根据各个指定类型指标的预设最小编码数据值、预设最大编码数据值,分别计算获得各个指定类型指标的随机新编码数据,并以随机新编码数据作为新扩展候选边缘节点服务器的适应度,构成各个新扩展候选边缘节点服务器,且新扩展候选边缘节点服务器的数目与上一步骤中被删除候选边缘节点服务器的数目相等,然后针对其中彼此相同的多个新扩展候选边缘节点服务器,仅保留一个,其余删除,更新所获的各个新扩展候选边缘节点服务器,然后进入步骤J,否则直接进入步骤K;
步骤J.按步骤D的方法,分别获得各新扩展候选边缘节点服务器的适应度,然后针对各个新扩展候选边缘节点服务器,加入、并更新候选服务器集合,再进入步骤K。
步骤K.判断候选服务器集合中是否存在适应度大于或等于最大适应度预设值MAX的候选边缘节点服务器,是则选择最大适应度所对应的候选边缘节点服务器,作为目标边缘节点服务器,并进入步骤M;否则进入步骤L。
步骤L.判断i是否等于I,是则进入步骤P;否则针对i所对应的值进行加1更新,然后返回步骤F;其中,I表示预设最大循环次数。
步骤M.云端服务器将待调度容器调度在目标边缘节点服务器上进行处理,调度结束,然后进入步骤N。
步骤N.分别针对候选服务器集合中的各个候选边缘节点服务器,判断是否存在服务等待队列长度大于预设最大服务器等待队列长度MAXL的候选边缘节点服务器,是则将该各个候选边缘节点服务器作为待调度候选边缘节点服务器,并进入步骤O;否则调度结束。
步骤O.分别针对各个待调度候选边缘节点服务器,应用改进蜂群算法,从待调度候选边缘节点服务器任意一个相邻候选边缘节点服务器的服务等待队列中随机剪切一个待运行容器,置于该待调度候选边缘节点服务器的服务等待队列的队首,调度结束。
步骤P.云端服务器将待调度容器调度在云端上进行处理,调度结束。
将上述所设计基于改进蜂群算法的多策略边缘计算资源调度方法,应用于实际当中,将用户终端上封装了待处理任务的待调度容器上传至云端服务器,由云端服务器根据设计调度策略决定将待调度容器调度至云端处理或调度至边缘节点服务器处理;实际应用当中,如图1和图2所示,云端服务器执行如下步骤:
步骤A.判断与用户终端之间存在通信联系的各个候选边缘节点服务器中,是否存在服务类型与待调度容器类型相同的候选边缘节点服务器,是则将该候选边缘节点服务器作为目标边缘节点服务器,并进入步骤M;否则进入步骤B。
步骤B.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,获取候选边缘节点服务器所分别对应CPU类型指标、内存类型指标、存储I/O类型指标、以及网络I/O类型指标的资源数据,然后进入步骤C。
步骤C.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,针对候选边缘节点服务器所对应的CPU类型指标、内存类型指标、存储I/O类型指标、以及网络I/O类型指标,分别进行编码处理,获得各候选边缘节点服务器分别对应各指定类型指标的编码数据,然后进入步骤D。
上述步骤C中,分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,按如下公式:
针对候选边缘节点服务器所对应的CPU类型指标和内存类型指标,分别计算指标的编码数据,获得该候选边缘节点服务器分别对应CPU类型指标和内存类型指标的编码数据,进而获得各候选边缘节点服务器分别对应CPU类型指标和内存类型指标的编码数据;其中,A表示CPU类型指标或内存类型指标,valueA表示候选边缘节点服务器对应指定类型指标A的编码数据,capacityA表示候选边缘节点服务器中指定类型指标A的总资源数据,totalA表示候选边缘节点服务器中指定类型指标A的已使用资源数据、与待调度容器对应指定类型指标A的资源需求数据之和。
以及分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,按如下公式:
针对候选边缘节点服务器所对应的存储I/O类型指标和网络I/O类型指标、分别计算指标的编码数据,获得该候选边缘节点服务器分别对应存储I/O类型指标和网络I/O类型指标的编码数据,进而获得各候选边缘节点服务器分别对应存储I/O类型指标和网络I/O类型指标的编码数据;其中,B表示存储I/O类型指标和网络I/O类型指标,valueB表示候选边缘节点服务器对应指定类型指标B的编码数据,curB表示候选边缘节点服务器对应指定类型指标B的每秒读写操作次数,maxB表示所有候选边缘节点服务器中对应指定类型指标B的每秒读写操作次数的最大值。
步骤D.根据CPU类型指标的权重为0.3,内存类型指标的权重为0.3,存储I/O类型指标的权重为0.2,网络I/O类型指标的权重为0.2,分别针对各个候选边缘节点服务器,针对候选边缘节点服务器所对应CPU类型指标、内存类型指标、存储I/O类型指标、网络I/O类型指标的编码数据进行加权处理,获得加权值,作为该候选边缘节点服务器所对应的适应度,进而获得各候选边缘节点服务器分别所对应的适应度,然后所有候选边缘节点服务器构成候选服务器集合,并进入步骤E;其中,各指定类型指标的预设权重之和等于1。
步骤E.初始化i=1,然后进入步骤F。
步骤F.分别针对候选服务器集合中的各个候选边缘节点服务器,根据候选边缘节点服务器所对应各个指定类型指标的编码数据,按如下公式:
valueC'=valueC+ran(-1,1)×(valueC-valueCi)
分别计算各个指定类型指标所对应的新编码数据,构成该候选边缘节点服务器所对应的一个新候选边缘节点服务器,进而获得候选服务器集合中各候选边缘节点服务器分别所对应的新候选边缘节点服务器,然后进入步骤G。其中,C表示一个指定类型指标,valueC表示候选边缘节点服务器对应指定类型指标C的编码数据,valueC'表示新候选边缘节点服务器对应指定类型指标C的新编码数据,valueCi表示从候选服务器集合中随机选取的某个候选边缘节点服务器对应指定类型指标C的编码数据,ran(-1,1)表示-1至1中的随机数。
步骤G.按步骤D的方法,分别获得各个新候选边缘节点服务器的适应度,然后分别针对候选服务器集合中的各个候选边缘节点服务器,判断候选边缘节点服务器的适应度是否小于或等于其所对应新候选边缘节点服务器的适应度,是则用对应新候选边缘节点服务器替换候选服务器集合中的该候选边缘节点服务器,并更新候选服务器集合;否则不做操作;完成上述对所有新候选边缘节点服务器的判断操作后,进入步骤H。
步骤H.删除候选服务器集合中适应度小于最小适应度预设值MIN的各个候选边缘节点服务器,并更新候选服务器集合,然后进入步骤I。
步骤I.判断上一步骤中是否存在被删除的候选边缘节点服务器,否则直接进入步骤K;是则根据各个指定类型指标的预设最小编码数据值、预设最大编码数据值,按如下公式:
valueD”=minD+ran(0,1)×(maxD-minD)
分别计算获得各个指定类型指标的随机新编码数据,并以随机新编码数据作为新扩展候选边缘节点服务器的适应度,构成各个新扩展候选边缘节点服务器,且新扩展候选边缘节点服务器的数目与上一步骤中被删除候选边缘节点服务器的数目相等,其中D表示一个指定类型指标,valueD”表示候选边缘节点服务器对应指定类型指标D的随机新编码数据,minD表示候选边缘节点服务器对应指定类型指标D的预设最小编码数据值,maxD表示候选边缘节点服务器对应指定类型指标D的预设最大编码数据值。
然后针对其中彼此相同的多个新扩展候选边缘节点服务器,仅保留一个,其余删除,更新所获的各个新扩展候选边缘节点服务器,然后进入步骤J。
步骤J.按步骤D的方法,分别获得各新扩展候选边缘节点服务器的适应度,然后针对各个新扩展候选边缘节点服务器,加入、并更新候选服务器集合,再进入步骤K。
步骤K.判断候选服务器集合中是否存在适应度大于或等于最大适应度预设值MAX的候选边缘节点服务器,是则选择最大适应度所对应的候选边缘节点服务器,作为目标边缘节点服务器,并进入步骤M;否则进入步骤L。
步骤L.判断i是否等于I,是则进入步骤P;否则针对i所对应的值进行加1更新,然后返回步骤F;其中,I表示预设最大循环次数。
步骤M.云端服务器将待调度容器调度在目标边缘节点服务器上进行处理,调度结束,然后进入步骤N。
步骤N.分别针对候选服务器集合中的各个候选边缘节点服务器,判断是否存在服务等待队列长度大于预设最大服务器等待队列长度MAXL的候选边缘节点服务器,是则将该各个候选边缘节点服务器作为待调度候选边缘节点服务器,并进入步骤O;否则调度结束。
步骤O.分别针对各个待调度候选边缘节点服务器,应用改进蜂群算法,从待调度候选边缘节点服务器任意一个相邻候选边缘节点服务器的服务等待队列中随机剪切一个待运行容器,置于该待调度候选边缘节点服务器的服务等待队列的队首,调度结束。
步骤P.云端服务器将待调度容器调度在云端上进行处理,调度结束。
本发明中加入对于容器调度目标节点选择的另两种影响因素:存储I/O类型指标和网络I/O类型指标,利用边缘计算弹性计算优势,并借助改进蜂群算法真正发挥出该优势,从而提出一种基于改进蜂群算法的多策略边缘计算资源调度方法。该方法的应用成功解决现有容器调度优选算法节点选择范围固定这一共性问题,能根据实际容器调度需求自由扩展新节点,实现调度方案最优化。将资源密集型容器调度至云端运行,将资源需求小的容器择优选择边缘节点调度运行,从而有效解决了传统云计算高时延、高负载的弊端。
上述技术方案所设计一种基于改进蜂群算法的多策略边缘计算资源调度方法,不同于现有的容器调度优选算法,主要体现在:第一,改进蜂群算法充分发挥边缘计算平台弹性扩展的优势,使得边缘节点服务器的选择范围不再受限;第二,采用两级更新的优选调度方式,先通过各候选边缘节点服务器的自扩展与替换,实现候选边缘节点服务器的一级更新;再通过***随机扩展方式,实现候选边缘节点服务器的二级更新,及时填补候选边缘节点服务器集合中的空缺,有效避免候选边缘节点服务器因适应度要求而删除殆尽,从而导致容器无处调度的情况发生;第三,改进蜂群算法思想的引入,有效避免了某候选边缘节点服务器被频繁选中进行容器调度,从而导致该候选边缘节点服务器负载过大的情况,实现了各候选边缘节点服务器间的负载均衡,增强***可用性与稳定性。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
Claims (3)
1.一种基于改进蜂群算法的多策略边缘计算资源调度方法,将用户终端上封装了待处理任务的待调度容器上传至云端服务器,由云端服务器根据所设计的调度策略决定将待调度容器调度至云端处理或调度至边缘节点服务器处理;其特征在于,云端服务器执行如下步骤:
步骤A.判断与用户终端之间存在通信联系的各个候选边缘节点服务器中,是否存在服务类型与待调度容器类型相同的候选边缘节点服务器,是则将该候选边缘节点服务器作为目标边缘节点服务器,并进入步骤M;否则进入步骤B;
步骤B.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,获取候选边缘节点服务器所对应各个指定类型指标的资源数据,然后进入步骤C;
步骤C.分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,针对候选边缘节点服务器所对应各个指定类型指标的资源数据、分别进行编码处理,获得各候选边缘节点服务器分别对应各指定类型指标的编码数据,然后进入步骤D;各指定类型指标包括CPU类型指标、内存类型指标、存储I/O类型指标、以及网络I/O类型指标;
上述步骤C中,分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,按如下公式:
针对候选边缘节点服务器所对应的CPU类型指标和内存类型指标,分别计算指标的编码数据,获得该候选边缘节点服务器分别对应CPU类型指标和内存类型指标的编码数据,进而获得各候选边缘节点服务器分别对应CPU类型指标和内存类型指标的编码数据;其中,A表示CPU类型指标或内存类型指标,valueA表示候选边缘节点服务器对应指定类型指标A的编码数据,capacityA表示候选边缘节点服务器中指定类型指标A的总资源数据,totalA表示候选边缘节点服务器中指定类型指标A的已使用资源数据、与待调度容器对应指定类型指标A的资源需求数据之和;
分别针对与用户终端之间存在通信联系的各个候选边缘节点服务器,按如下公式:
针对候选边缘节点服务器所对应的存储I/O类型指标和网络I/O类型指标、分别计算指标的编码数据,获得该候选边缘节点服务器分别对应存储I/O类型指标和网络I/O类型指标的编码数据,进而获得各候选边缘节点服务器分别对应存储I/O类型指标和网络I/O类型指标的编码数据;其中,B表示存储I/O类型指标和网络I/O类型指标,valueB表示候选边缘节点服务器对应指定类型指标B的编码数据,curB表示候选边缘节点服务器对应指定类型指标B的每秒读写操作次数,maxB表示所有候选边缘节点服务器中对应指定类型指标B的每秒读写操作次数的最大值;
步骤D.根据各指定类型指标的预设权重,分别针对各个候选边缘节点服务器,针对候选边缘节点服务器所对应各指定类型指标的编码数据进行加权处理,获得加权值,作为该候选边缘节点服务器所对应的适应度,进而获得各候选边缘节点服务器分别所对应的适应度,然后所有候选边缘节点服务器构成候选服务器集合,并进入步骤E;其中,各指定类型指标的预设权重之和等于1;
步骤E.初始化i=1,然后进入步骤F;
步骤F.分别针对候选服务器集合中的各个候选边缘节点服务器,根据候选边缘节点服务器所对应各个指定类型指标的编码数据,按如下公式:
valueC'=valueC+ran(-1,1)×(valueC-valueCi)
分别计算各个指定类型指标所对应的新编码数据,构成该候选边缘节点服务器所对应的一个新候选边缘节点服务器,进而获得候选服务器集合中各候选边缘节点服务器分别所对应的新候选边缘节点服务器;其中C表示一个指定类型指标,valueC表示候选边缘节点服务器对应指定类型指标C的编码数据,valueC'表示新候选边缘节点服务器对应指定类型指标C的新编码数据,valueCi表示从候选服务器集合中随机选取的某个候选边缘节点服务器对应指定类型指标C的编码数据,ran(-1,1)表示-1至1中的随机数,然后进入步骤G;
步骤G.按步骤D的方法,分别获得各个新候选边缘节点服务器的适应度,然后分别针对候选服务器集合中的各个候选边缘节点服务器,判断候选边缘节点服务器的适应度是否小于其所对应新候选边缘节点服务器的适应度,是则用对应新候选边缘节点服务器替换候选服务器集合中的该候选边缘节点服务器,并更新候选服务器集合;否则不做操作;完成上述对所有新候选边缘节点服务器的判断操作后,进入步骤H;
步骤H.删除候选服务器集合中适应度小于最小适应度预设值MIN的各个候选边缘节点服务器,并更新候选服务器集合,然后进入步骤I;
步骤I.判断上一步骤中是否存在被删除的候选边缘节点服务器,否则直接进入步骤K;是则根据各个指定类型指标的预设最小编码数据值、预设最大编码数据值,按如下公式:
valueD”=minD+ran(0,1)×(maxD-minD)
分别计算获得各个指定类型指标的随机新编码数据,并以随机新编码数据作为新扩展候选边缘节点服务器的适应度,构成各个新扩展候选边缘节点服务器,且新扩展候选边缘节点服务器的数目与上一步骤中被删除候选边缘节点服务器的数目相等,其中D表示一个指定类型指标,valueD”表示候选边缘节点服务器对应指定类型指标D的随机新编码数据,minD表示候选边缘节点服务器对应指定类型指标D的预设最小编码数据值,maxD表示候选边缘节点服务器对应指定类型指标D的预设最大编码数据值;然后针对其中彼此相同的多个新扩展候选边缘节点服务器,仅保留一个,其余删除,更新所获的各个新扩展候选边缘节点服务器,然后进入步骤J;
步骤J.按步骤D的方法,分别获得各新扩展候选边缘节点服务器的适应度,然后针对各个新扩展候选边缘节点服务器,加入、并更新候选服务器集合,再进入步骤K;
步骤K.判断候选服务器集合中是否存在适应度大于或等于最大适应度预设值MAX的候选边缘节点服务器,是则选择最大适应度所对应的候选边缘节点服务器,作为目标边缘节点服务器,并进入步骤M;否则进入步骤L;
步骤L.判断i是否等于I,是则进入步骤P;否则针对i所对应的值进行加1更新,然后返回步骤F;其中,I表示预设最大循环次数;
步骤M.云端服务器将待调度容器调度在目标边缘节点服务器上进行处理,调度结束;
步骤P.云端服务器将待调度容器调度在云端上进行处理,调度结束。
2.根据权利要求1所述一种基于改进蜂群算法的多策略边缘计算资源调度方法,其特征在于:还包括如下步骤N至步骤O,执行完所述步骤M中云端服务器将待调度容器调度在目标边缘节点服务器上进行处理的操作后,进入步骤N;
步骤N.分别针对候选服务器集合中的各个候选边缘节点服务器,判断是否存在服务等待队列长度大于预设最大服务器等待队列长度MAXL的候选边缘节点服务器,是则将该各个候选边缘节点服务器作为待调度候选边缘节点服务器,并进入步骤O;否则调度结束;
步骤O.分别针对各个待调度候选边缘节点服务器,应用改进蜂群算法,从待调度候选边缘节点服务器任意一个相邻候选边缘节点服务器的服务等待队列中随机剪切一个待运行容器,置于该待调度候选边缘节点服务器的服务等待队列的队首,调度结束。
3.根据权利要求1所述一种基于改进蜂群算法的多策略边缘计算资源调度方法和***,其特征在于,所述各指定类型指标的预设权重如下:
CPU类型指标的权重为0.3,内存类型指标的权重为0.3,存储I/O类型指标的权重为0.2,网络I/O类型指标的权重为0.2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811637049.2A CN109788046B (zh) | 2018-12-29 | 2018-12-29 | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811637049.2A CN109788046B (zh) | 2018-12-29 | 2018-12-29 | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109788046A CN109788046A (zh) | 2019-05-21 |
CN109788046B true CN109788046B (zh) | 2020-06-16 |
Family
ID=66498956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811637049.2A Active CN109788046B (zh) | 2018-12-29 | 2018-12-29 | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109788046B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493304B (zh) * | 2019-07-04 | 2022-11-29 | 上海数据交易中心有限公司 | 边缘计算***以及交易*** |
CN110636138B (zh) * | 2019-10-14 | 2020-07-03 | 南京航空航天大学 | 基于响应比优先级的边缘服务器部署方法 |
CN110753126B (zh) * | 2019-10-28 | 2022-06-17 | 国网河南省电力公司信息通信公司 | 服务节点选择方法、装置、***和介质 |
CN112953993B (zh) * | 2019-12-11 | 2023-09-26 | 阿里巴巴集团控股有限公司 | 资源调度方法、设备、网络***及存储介质 |
CN111954236B (zh) * | 2020-07-27 | 2021-11-09 | 河海大学 | 一种基于优先级的分层边缘计算卸载方法 |
CN111865697B (zh) * | 2020-07-29 | 2021-09-24 | 广东电网有限责任公司电力调度控制中心 | 配用电***边缘计算终端的计算负荷表征方法及装置 |
CN112764900A (zh) * | 2020-08-18 | 2021-05-07 | 薛东 | 结合云网融合和人工智能的业务数据处理方法及云端平台 |
DE102021109546A1 (de) | 2020-09-30 | 2022-03-31 | Hewlett Packard Enterprise Development Lp | Verhinderung der einplanung oder ausführung einer ressource auf einem inkonsistenten host-knoten |
CN112764936B (zh) | 2021-01-29 | 2022-06-14 | 北京邮电大学 | 基于深度强化学习的边缘计算服务器信息处理方法及装置 |
CN116708451B (zh) * | 2023-08-08 | 2023-10-20 | 广东奥飞数据科技股份有限公司 | 一种边云协同调度方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582043A (zh) * | 2008-05-16 | 2009-11-18 | 华东师范大学 | 一种异构计算***动态任务分配方法 |
CN104572307A (zh) * | 2015-01-30 | 2015-04-29 | 无锡华云数据技术服务有限公司 | 一种对虚拟资源进行弹性调度的方法 |
CN104793993A (zh) * | 2015-04-24 | 2015-07-22 | 江南大学 | 基于Levy飞行的人工蜂群粒子群算法的云计算任务调度方法 |
CN106161640A (zh) * | 2016-07-24 | 2016-11-23 | 成都育芽科技有限公司 | 一种基于云计算的虚拟机两级优化调度管理平台 |
CN108762923A (zh) * | 2018-04-11 | 2018-11-06 | 哈尔滨工程大学 | 采用差分进化算法作为Docker Swarm调度策略的方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9503310B1 (en) * | 2012-11-27 | 2016-11-22 | Leidos, Inc. | Methods and systems of dynamic management of resources in a virtualized environment |
CN104010028B (zh) * | 2014-05-04 | 2017-11-07 | 华南理工大学 | 一种云平台下性能加权的虚拟资源动态管理策略方法 |
CN104917839A (zh) * | 2015-06-12 | 2015-09-16 | 浪潮电子信息产业股份有限公司 | 一种用于云计算环境下的负载均衡方法 |
CN105302632A (zh) * | 2015-11-19 | 2016-02-03 | 国家电网公司 | 一种云计算工作负载动态整合方法 |
CN105656989B (zh) * | 2015-12-10 | 2019-04-12 | 天津海量信息技术股份有限公司 | 基于蜂群思维的分布式计算方法 |
CN106790726B (zh) * | 2017-03-30 | 2020-08-11 | 电子科技大学 | 一种基于Docker云平台的优先级队列动态反馈负载均衡资源调度方法 |
CN107908457B (zh) * | 2017-11-08 | 2020-03-17 | 河海大学 | 一种基于稳定匹配的容器化云资源分配方法 |
-
2018
- 2018-12-29 CN CN201811637049.2A patent/CN109788046B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582043A (zh) * | 2008-05-16 | 2009-11-18 | 华东师范大学 | 一种异构计算***动态任务分配方法 |
CN104572307A (zh) * | 2015-01-30 | 2015-04-29 | 无锡华云数据技术服务有限公司 | 一种对虚拟资源进行弹性调度的方法 |
CN104793993A (zh) * | 2015-04-24 | 2015-07-22 | 江南大学 | 基于Levy飞行的人工蜂群粒子群算法的云计算任务调度方法 |
CN106161640A (zh) * | 2016-07-24 | 2016-11-23 | 成都育芽科技有限公司 | 一种基于云计算的虚拟机两级优化调度管理平台 |
CN108762923A (zh) * | 2018-04-11 | 2018-11-06 | 哈尔滨工程大学 | 采用差分进化算法作为Docker Swarm调度策略的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109788046A (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109788046B (zh) | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 | |
CN111427679B (zh) | 面向边缘计算的计算任务调度方法、***、装置 | |
Ge et al. | GA-based task scheduler for the cloud computing systems | |
CN109656713B (zh) | 一种基于边缘计算框架的容器调度方法 | |
US8468246B2 (en) | System and method for allocating resources in a distributed computing system | |
CN110069341B (zh) | 边缘计算中结合功能按需配置的有依赖关系任务的调度方法 | |
CN107341041B (zh) | 基于优先队列的云任务多维约束回填调度方法 | |
CN111104211A (zh) | 基于任务依赖的计算卸载方法、***、设备及介质 | |
CN109947574A (zh) | 一种基于雾网络的车辆大数据计算卸载方法 | |
CN114928607B (zh) | 面向多边接入边缘计算的协同任务卸载方法 | |
CN112799823A (zh) | 边缘计算任务的在线分派调度方法和*** | |
CN108376103A (zh) | 一种云平台的资源平衡控制方法及服务器 | |
CN109005211B (zh) | 一种无线城域网环境下的微云部署及用户任务调度方法 | |
CN112148454A (zh) | 一种支持串行和并行的边缘计算方法及电子设备 | |
Zhang et al. | Employ AI to improve AI services: Q-learning based holistic traffic control for distributed co-inference in deep learning | |
Qureshi et al. | Grid resource allocation for real-time data-intensive tasks | |
CN107168805A (zh) | 一种基于虚拟机的资源调度方法 | |
CN110167031A (zh) | 一种面向集中式基站的资源分配方法、设备及存储介质 | |
CN109815204A (zh) | 一种基于拥塞感知的元数据请求分发方法及设备 | |
CN110727511B (zh) | 应用程序的控制方法、网络侧设备和计算机可读存储介质 | |
Kabir et al. | VM placement algorithms for hierarchical cloud infrastructure | |
CN108667920B (zh) | 一种雾计算环境业务流量加速***及其业务流量加速方法 | |
CN115562841B (zh) | 一种云视频服务自适应资源调度***和方法 | |
CN116939044A (zh) | 一种基于区块链技术的算力路由规划方法和装置 | |
CN116010051A (zh) | 一种联邦学习多任务调度方法及装置 |
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 |