本申请涉及虚拟技术领域,特别涉及一种服务器任务处理方法,还涉及一种服务器任务处理装置、设备及计算机可读存储介质。
背景技术:
在传统的基于云的架构中,服务器通常位于远程数据中心,由于数据中心与用户之间的距离较长,一些延迟敏感的服务需求难以得到满足,如自动或辅助驾驶、增强现实、虚拟现实等。为缩短延迟并减轻用户与数据中心之间通信基础设施的带宽压力,近年来提出了一种称为移动边缘计算(mobileedgecomputing,mec)的新技术,该技术在靠近移动设备的网络边缘部署计算容量和存储容量,极大程度地减少了网络堵塞和服务延迟。
然而,现有的关于移动边缘计算的研究主要集中在数据缓存、计算迁移和服务器部署等方面,还没有专门针对基于移动边缘计算架构的生存性的研究。具体而言,当某一区域的边缘服务器发生故障时,其所辖的所有用户终端都将陷入瘫痪状态,并被迫中断所有正在进行的业务流程以进行故障维修,故障修复后才能继续进行业务处理,然而,服务器业务的中断却给用户带来了极大的不便,造成了很差的用户体验。
因此,如何在服务器故障时不中断业务流程,以保证用户体验是本领域技术人员亟待解决的问题。
技术实现要素:
本申请的目的是提供一种服务器任务处理方法,该服务器任务处理方法能够在服务器发生故障时不中断业务流程,继续业务处理,极大地提高了用户体验;本申请的另一目的是提供一种服务器任务处理装置、设备及计算机可读存储介质,均具有上述有益效果。
第一方面,本申请提供了一种服务器任务处理方法,所述服务器任务处理方法包括:
根据获取的故障信息确定故障服务器;
采集所述故障服务器的服务器资源;
将所述服务器资源分配至保护服务器,以使所述保护服务器利用所述服务器资源对所述故障服务器对应的待处理任务进行处理。
优选的,所述故障服务器和所述保护服务器为mec服务器。
优选的,所述将所述服务器资源分配至保护服务器,包括:
将所述服务器资源平均分配至预设数量个所述保护服务器。
优选的,所述将所述服务器资源分配至保护服务器,包括:
获取各所述保护服务器的当前资源负载;
根据各所述当前资源负载确定当前最大资源负载;
按照所述当前资源负载从小到大的顺序对各所述保护服务器进行排序;
以所述当前最大负载为上限,将所述服务器资源依次分配至各所述保护服务器;
判断所述服务器资源是否分配完毕;
若否,则将剩余服务器资源平均分配至各所述保护服务器。
优选的,所述将所述服务器资源分配至保护服务器,包括:
构建服务器资源和资源传输带宽关于用户终端、保护服务器和资源传输链路的ilp模型;
在预设约束条件下,以最小化各所述保护服务器被分配的服务器资源和最小化所述资源传输带宽为优化目标,通过所述ilp模型计算获得最优分配策略;
根据所述最优分配策略将所述服务器资源分配至各所述保护服务器。
优选的,所述服务器任务处理方法还包括:
根据所述故障信息下发报警指令至报警器。
优选的,所述服务器任务处理方法还包括:
当接收到所述故障服务器的故障恢复信号时,将各所述保护服务器上被分配的服务器资源回迁至所述故障服务器。
第二方面,本申请还提供了一种服务器任务处理装置,所述虚拟机热升级装置包括:
故障确定模块,用于根据获取的故障信息确定故障服务器;
资源采集模块,用于采集所述故障服务器的服务器资源;
任务处理模块,用于将所述服务器资源分配至保护服务器,以使所述保护服务器利用所述服务器资源对所述故障服务器对应的待处理任务进行处理。
第三方面,本申请还提供了一种服务器任务处理设备,所述服务器任务处理设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任意一种服务器任务处理方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种服务器任务处理方法的步骤。
本申请所提供的一种服务器任务处理方法,包括根据获取的故障信息确定故障服务器;采集所述故障服务器的服务器资源;将所述服务器资源分配至保护服务器,以使所述保护服务器利用所述服务器资源对所述故障服务器对应的待处理任务进行处理。
可见,本申请所提供的技术方案,通过设置保护服务器解决了由于服务器故障导致的业务中断的问题,当某一服务器发生故障时,直接采集其中的资源并转发至保护服务器,也即备用服务器,由保护服务器基于获得的故障服务器的资源继续为用户终端提供服务,有效避免了业务中断的问题,为用户提供了极大地便利,有效提高了用户体验。
本申请所提供的一种服务器任务处理装置、设备及计算机可读存储介质,均具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请所提供的一种服务器任务处理方法的流程示意图;
图2为本申请所提供的一种边缘服务器的部署图;
图3为本申请所提供的一种边缘服务器的故障恢复示意图;
图4为本申请所提供的一种服务器资源分配结果的对比示意图;
图5为本申请所提供的一种小网络系统中服务器资源分配方案的性能测试结果示意图;
图6为本申请所提供的一种大网络系统中服务器资源分配方案的性能测试结果示意图;
图7为本申请所提供的一种虚拟机热升级装置的结构示意图;
图8为本申请所提供的一种虚拟机热升级设备的结构示意图。
具体实施方式
本申请的核心是提供一种服务器任务处理方法,该服务器任务处理方法能够在服务器发生故障时不中断业务流程,继续业务处理,极大地提高了用户体验;本申请的另一核心是提供一种服务器任务处理装置、设备及计算机可读存储介质,均具有上述有益效果。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
请参考图1,图1为本申请所提供的一种服务器任务处理方法的流程示意图,该服务器任务处理方法可以包括:
s101:根据获取的故障信息确定故障服务器;
本步骤旨在实现故障服务器的确定,当某一服务器发生故障时,将会上传相应的故障信息,由此,管理平台即可根据该故障信息确定发生故障的服务器,即上述故障服务器。
请参照图2,以mec服务器为例,图2为本申请所提供的一种边缘服务器的部署图,其中,远程数据中心即为上述管理平台。具体的,支持mec服务器的fiwi(fiber-wireless,光纤无线)接入网主要由无源光网络(passiveopticalnetwork,pon)和多个无线接入网络组成,每个pon由光线路终端(opticallineterminal,olt)和多个光网络单元(opticalnetworkunit,onu)组成,其中,每个onu与无线基站(basestation,bs)连接,即图2所示onu-bs。进一步,移动用户为访问无线接入服务而与附近的onu-bs进行无线连接,为实现mec功能,可在每个onu-bs上部署mec服务器,为fiwi接入网络边缘的本地延迟敏感服务提供计算和存储容量。
由此,通过远程数据中心对各个服务器进行实时监控,当监测到故障信息时,根据该故障信息确定故障服务器即可。可以理解的是,上述故障服务器的故障类型并不唯一,可能为光纤链路的故障、onu-bs的故障、mec服务器自身故障等,其中,光纤链路或onu-bs发生故障将会影响用户通信,mec服务器自身的故障则会影响用户的mec服务。
s102:采集故障服务器的服务器资源;
本步骤旨在实现服务器资源的采集,具体的,由于故障服务器无法继续为用户终端提供业务服务,为避免业务中断,可采集该故障服务器中的服务器资源,进而利用该服务器资源继续为用户终端提供业务服务。其中,服务器资源的采集可采用已有技术中的任意一种,本申请在此不再赘述。
优选的,上述故障服务器和保护服务器可以为mec服务器。
本申请提供了一种具体类型的服务器,即图2所示mec服务器。具体的,mec服务器属于边缘服务器,逻辑上不依赖于网络的其他部分,具有较高的安全性;另外,mec服务器通常具有较高的计算能力,适用于大量数据的分析处理;同时,由于mec服务器距离用户或信息源很近,大大减小了网络响应用户请求的时延,降低了传输网和核心网部分发生网络拥塞的可能性。
s103:将服务器资源分配至保护服务器,以使保护服务器利用服务器资源对故障服务器对应的待处理任务进行处理。
本步骤旨在实现服务器资源的分配,具体的,将故障服务器的服务器资源分配至保护服务器,由保护服务器利用被分配的服务器资源继续为相应的用户终端提供服务,也即继续对故障服务器的待处理任务进行处理。
可以理解的是,保护服务器相当于备份服务器,用于备份故障服务器的资源信息。需要说明的是,保护服务器的数量并不唯一,服务器资源的分配方法也不唯一,均可由技术人员根据实际需求进行设定,其具体实现方式并不影响本技术方案的实施。
需要说明的是,上述保护服务器并不仅仅用作备份服务器资源存在,整个系统内的所有服务器都可以互为保护服务器,当系统内所有的服务器都无故障发生时,均可以为自身所辖的各个用户终端提供正常的业务服务。
作为一种优选实施例,该服务器任务处理方法还可以包括:根据故障信息下发报警指令至报警器。
为便于技术人员及时获知服务器故障,对故障服务器进行维修,当管理平台接收到故障信息时,可立即下发报警指令至报警器进行报警,以提高业务服务的恢复效率。
作为一种优选实施例,该服务器任务处理方法还可以包括:当接收到故障服务器的故障恢复信号时,将各保护服务器上被分配的服务器资源回迁至故障服务器。
当故障服务器得以修复时,即可上传故障恢复信号至管理平台,以通知管理平台将各个保护服务器上被分配的服务器资源回迁至该修复后的服务器,进一步继续正常的业务处理流程即可。
本申请所提供的服务器任务处理方法,通过设置保护服务器解决了由于服务器故障导致的业务中断的问题,当某一服务器发生故障时,直接采集其中的资源并转发至保护服务器,也即备用服务器,由保护服务器基于获得的故障服务器的资源继续为用户终端提供服务,有效避免了业务中断的问题,为用户提供了极大地便利,有效提高了用户体验。
在上述实施例的基础上,本实施例针对服务器资源的分配方式提供了几种较为具体的实现方式。
优选的,上述将服务器资源分配至保护服务器,可以包括:将服务器资源平均分配至预设数量个保护服务器。
可见,本实施例旨在实现服务器资源的平均分配。
首先,参考图3,图3为本申请所提供的一种边缘服务器的故障恢复示意图,其中,n0是为用户a提供业务服务的本地服务器,即用户a的工作服务器,n1、n2和n3是为用户a的提供资源备份的候选服务器,即用户a的保护服务器。由于除n0以外,n3也与用户a相邻且能够与用户a进行无线接入,暂且将n0称为第一无线接入节点,将n3称为第二无线接入节点。
进一步,假设n0出现故障,具体为onu-bs及其连接的服务器发生故障,由此,该工作节点n0不能继续作为中继节点为用户a提供服务,此时,为实现业务恢复,其他保护服务器对用户a进行无线接入,可以想到的,对于用户a来说,为保证工作服务器在故障时实现业务恢复,其必须具有至少两个无线接入节点。
进一步,当n0发生故障后,为恢复用户a的业务服务,可以使所有符合条件的保护服务器备份等量的服务器资源来恢复受影响的业务服务,因此,n1、n2和n3将分别为用户a提供1/3的用户a所需的服务器资源。
优选的,上述将服务器资源分配至保护服务器,可以包括:获取各保护服务器的当前资源负载;根据各当前资源负载确定当前最大资源负载;按照当前资源负载从小到大的顺序对各保护服务器进行排序;以当前最大负载为上限,将服务器资源依次分配至各保护服务器;判断服务器资源是否分配完毕;若否,则将剩余服务器资源平均分配至各保护服务器。
可见,本实施例旨在实现服务器资源的均衡分配,即根据每个服务器上实际的本地负载来进行资源分配。
首先,同样参考图3,在服务器资源分配之后,如果需要访问n1和n2上的服务器资源,则需要使用n1、n2和n3之间的回程网络实现,比如,为访问n1上的服务器资源,其需要通过链路n3-n2和n2-n1进行传递,为了访问n2上的服务器资源,其需要通过链路n3-n2进行传递,此时,则涉及到网络带宽的问题,该网络带宽即为保护带宽。
进一步,由于上一实施例中服务器资源的平均分配方法没有考虑到每个保护服务器上实际的本地负载,如果在使用保护策略之前各保护服务器上的本地负载不相等,采用上一实施例提供的资源平均分配方法后,仍然存在各保护服务器上负载不均等的问题。
因此,本申请实施例提出了均衡分配的实现方式,具体的,对于本地负载较低的服务器,可以尽可能分配较少的服务器资源,而对于本地负载较高的服务器,则尽可能分配较多的服务器资源。首先,比较所有保护服务器上的负载以找到最高负载,将此最高负载设置为上限负载k,设定其他保护服务器在分配资源后的负载量不超过k;进一步,根据保护服务器上负载从低到高的顺序对各保护服务器进行排序,并依次将服务器资源分配给这些保护服务器,使得每个保护服务器可以最大限度地分配服务器资源,直至该保护服务器上的总负载达到k,重复该操作,直到受影响的mec服务完全恢复;当然,如果所有保护服务器的负载均已经达到k级,但故障服务器仍未恢复,则可以将剩余的服务器资源平均分配到所有保护服务器上,由此,即可完全平衡每个保护服务器上的负载。
进一步,参考图4,图4为本申请所提供的一种服务器资源分配结果的对比示意图,其中,方案一为平均分配方法,方案二为均衡分配方法,显而易见的,方案二相较于方案一实现了各保护服务器的负载均衡。
优选的,上述将服务器资源分配至保护服务器,可以包括:构建服务器资源和资源传输带宽关于用户终端、保护服务器和资源传输链路的ilp模型;在预设约束条件下,以最小化各保护服务器被分配的服务器资源和最小化资源传输带宽为优化目标,通过ilp模型计算获得最优分配策略;根据最优分配策略将服务器资源分配至各保护服务器。
可见,本实施例旨在实现服务器资源的最优分配。
具体而言,除了需要考虑平衡每个保护服务器上的负载之外,还应考虑到因访问远程保护服务器而消耗过多额外带宽的问题,如果访问的保护服务器越远,其所经过的链路越多,也即消耗的带宽越多。此外,对于某些延迟敏感的服务业务,还需考虑到用户终端对服务器资源的延迟要求,远离用户终端的服务器不能作为保护服务器对用户终端实现业务服务恢复。
因此,本实施例将网络带宽考虑在内,通过构建ilp模型进行寻优,实现服务器资源的有效分配。具体的,将最小化各保护服务器被分配的服务器资源和最小化资源传输带宽作为ilp模型的优化目标,获取输入信息:(1)网络拓扑:g(u,e,l),其中,u为用户终端集合,e为服务器集合,l为连接服务器的通信链路集合;(2)有关用户终端请求的集合:r(n,b,u),其中,u为用户终端的索引,n为用户终端所需的服务器资源量,b为用户终端所需的带宽量。
进一步,本申请提出了具体的预设约束条件:
(1)业务服务恢复约束:每个受影响的业务服务均应通过其他保护服务器上被分配的服务器资源完全恢复;
(2)保护服务器资源限制:每个保护服务器上的工作和被分配的服务器资源的总和不应超过其资源总容量;
(3)光纤链路容量限制:光纤链路上用于服务器故障恢复的保护带宽总量不应超过其最大链路容量;
(4)基站带宽限制:基站的所有本地用户终端消耗的带宽量和基站作为第二接入点用于其他非本地用户终端的业务恢复所消耗的带宽量之和不应超过当前基站的最大容量。
(5)延迟约束:每个业务服务的延迟不超过用户终端对业务的时延要求。
由此,基于上述优化目标和约束条件,即可通过ilp模型计算获得最优分配策略,进而根据该最优分配策略对服务器资源进行分配即可。
针对以上提出的各个具体实施例,本申请采用了仿真手段对服务器资源以及网络带宽进行了有效验证。请参考图5和图6,图5为本申请所提供的一种小网络系统中服务器资源分配方案的性能测试结果示意图,图6为本申请所提供的一种大网络系统中服务器资源分配方案的性能测试结果示意图,其中,(a)为小网络系统中关于服务器资源的测试,(b)为小网络系统中关于网络带宽的测试;(c)为大网络系统中关于服务器资源的测试,(d)为大网络系统中关于网络带宽的测试。其中,小网络系统包括14个服务器节点和36个用户节点,大网络系统包括50个服务器节点和146个用户节点。
首先,以mec服务器为例,设定模拟的系统参数如下:每台mec服务器的最大mec容量为2000个单位;每条光纤链路的最大容量为10gb/s(假设采用10g-epon作为光接入系统),每个无线基站的最大容量为2gb/s;每个用户终端所需的平均mec资源量从集合x∈{20,40,60,80,100}中选取,实际所需的mec资源在[x-10,x+10]范围内随机产生;每个用户终端所需的通信带宽在[10,30]mb/s范围内随机产生;每个mec服务的延迟约束在[18,23]ms范围内随机选择,每个网络节点的切换延迟为8ms。
进一步,图5和图6分别显示了两个测试网络的结果,其中“ilp”、“heu_be”和“heu_average”分别对应于ilp模型、基于木桶效应(均衡负载)的启发式算法和基于平均分配的启发式算法的结果。可以看出,在均衡mec服务器资源的性能方面,基于木桶效应的启发式算法和ilp模型的结果基本一致,这表明基于木桶效应的启发式算法能在合理的时间内求解出迫近最优解的结果。其次,与基于平均分配的启发式算法相比,基于木桶理论的启发式算法能够有效地减少所有mec服务器上的最大mec资源,其原因在于基于木桶理论的启发式算法除了使不同mec服务器之间最大限度地共享保护mec资源之外,还考虑了基于木桶效应用以平衡不同mec服务器上的负载。此外,在最小化网络保护总带宽的性能方面,可以看出,基于木桶理论的启发式算法的结果非常接近ilp模型的结果,并且明显优于基于平均分配的启发式算法结果。
下面对本申请实施例提供的服务器任务处理装置进行介绍,下文描述的服务器任务处理装置与上文描述的服务器任务处理方法可相互对应参照。
请参考图7,图7为本申请所提供的一种服务器任务处理装置的结构示意图,该服务器任务处理装置可以包括:
故障确定模块10,用于根据获取的故障信息确定故障服务器;
资源采集模块20,用于采集故障服务器的服务器资源;
任务处理模块30,用于将服务器资源分配至保护服务器,以使保护服务器利用服务器资源对故障服务器对应的待处理任务进行处理。
本申请所提供的服务器任务处理装置,通过设置保护服务器解决了由于服务器故障导致的业务中断的问题,当某一服务器发生故障时,直接采集其中的资源并转发至保护服务器,也即备用服务器,由保护服务器基于获得的故障服务器的资源继续为用户终端提供服务,有效避免了业务中断的问题,为用户提供了极大地便利,有效提高了用户体验。
在上述实施例的基础上,作为一种优选实施例,本申请所提供的虚拟机热升级装置中,上述任务处理模块30可具体用于将服务器资源平均分配至预设数量个保护服务器。
在上述实施例的基础上,作为一种优选实施例,本申请所提供的虚拟机热升级装置中,上述任务处理模块30可具体用于获取各保护服务器的当前资源负载;根据各当前资源负载确定当前最大资源负载;按照当前资源负载从小到大的顺序对各保护服务器进行排序;以当前最大负载为上限,将服务器资源依次分配至各保护服务器;判断服务器资源是否分配完毕;若否,则将剩余服务器资源平均分配至各保护服务器。
在上述实施例的基础上,作为一种优选实施例,本申请所提供的虚拟机热升级装置中,上述任务处理模块30可具体用于构建服务器资源和资源传输带宽关于用户终端、保护服务器和资源传输链路的ilp模型;在预设约束条件下,以最小化各保护服务器被分配的服务器资源和最小化资源传输带宽为优化目标,通过ilp模型计算获得最优分配策略;根据最优分配策略将服务器资源分配至各保护服务器。
在上述实施例的基础上,作为一种优选实施例,本申请所提供的虚拟机热升级装置中,还可包括报警模块,用于根据故障信息下发报警指令至报警器。
在上述实施例的基础上,作为一种优选实施例,本申请所提供的虚拟机热升级装置中,还可包括资源回迁模块,用于当接收到故障服务器的故障恢复信号时,将各保护服务器上被分配的服务器资源回迁至故障服务器。
对于本申请提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
下面对本申请实施例提供的服务器任务处理设备进行介绍,下文描述的服务器任务处理设备与上文描述的服务器任务处理方法可相互对应参照。
请参考图8,图8为本申请所提供的一种服务器任务处理设备的结构示意图,该服务器任务处理设备可以包括:
存储器1,用于存储计算机程序;
处理器2,用于执行上述存储器1存储的计算机程序时可实现上述任意一种虚拟机热升级方法的步骤。
对于本申请提供的设备的介绍请参照上述方法实施例,本申请在此不做赘述。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于存储计算机程序,其中,计算机程序被处理器执行时可实现上述任意一种服务器任务处理方法的步骤。
其中,该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请提供的计算机可读存储介质的具体介绍请参照上述方法实施例,本申请在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的服务器任务处理方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围要素。