一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于管理计算系统的方法、设备和程序产品与流程

2023-01-14 15:16:05 来源:中国专利 TAG:


1.本公开的各实现方式涉及计算系统,更具体地,涉及用于管理计算系统中的计算任务的方法、设备和计算机程序产品。


背景技术:

2.随着移动网络技术的发展,目前已经能够提供越来越高的数据传输速度。用户已经可以通过移动终端来获取多种类型的服务,例如,用户可以获取视频、音频、各种虚拟现实、增强现实、以及混合现实的服务。将会理解,当移动终端位于移动网络中的不同位置时,移动终端所接收到的移动网络信号的质量将会有所不同。这将会导致移动终端处的服务出现延迟和/或卡顿等现象。此时,如何在移动网络中分配计算任务,成为一个研究热点。


技术实现要素:

3.因而,期望能够开发并实现一种以更为有效的方式来在移动网络中分配计算任务的技术方案。期望该技术方案能够与现有的移动网络相兼容,并且通过改造现有移动网络的各种配置,来以更为有效的方式在移动网络中分配计算任务。
4.根据本公开的第一方面,提供了一种用于管理计算系统的方法。在该方法中,获取计算系统中的计算设备的当前状态以及多个历史状态,多个历史状态分别描述计算系统中的计算设备在多个历史时间点的历史状态。响应于确定当前状态匹配于用于调度计算设备的调度类型,在多个历史状态中搜索与当前状态相匹配的历史状态。确定与历史状态相关联的历史调度策略。基于历史调度策略,向计算系统中的至少一个其他计算设备分配将要由计算设备执行的计算任务。
5.根据本公开的第二方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行根据本公开的第一方面的方法。
6.根据本公开的第三方面,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的第一方面的方法。
附图说明
7.结合附图并参考以下详细说明,本公开各实现方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实现方式。在附图中:
8.图1示意性示出了根据一个技术方案的其中可以使用根据本公开的示例性实现方式的方法的计算系统的框图;
9.图2示意性示出了根据本公开的示例性实现方式的用于管理计算系统的框图;
10.图3示意性示出了根据本公开的示例性实现方式的用于管理计算系统的方法的流程图;
11.图4示意性示出了根据本公开的示例性实现方式的计算设备的状态的框图;
12.图5示意性示出了根据本公开的示例性实现方式的计算设备的分布的框图;
13.图6示意性示出了根据本公开的示例性实现方式的计算设备的相邻计算设备列表的框图;
14.图7示意性示出了根据本公开的示例性实现方式的用于分配计算任务的框图;以及
15.图8示意性示出了根据本公开的示例性实现的用于管理计算系统的设备的框图。
具体实施方式
16.下面将参照附图更详细地描述本公开的优选实现。虽然附图中显示了本公开的优选实现,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
17.在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实现”和“一个实现”表示“至少一个示例实现”。术语“另一实现”表示“至少一个另外的实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
18.首先参见图1描述本公开的示例性实现方式的应用环境。图1示意性示出了根据一个技术方案的其中可以使用根据本公开的示例性实现方式的方法的计算系统100的框图。在下文中,将仅以移动网络环境作为计算系统示例来描述本公开的各个实现方式。如图1所示,计算系统100可以包括核心网络110和无线接入网络130。在无线接入网络130中,移动终端140、
……
、以及142可以经由基站150来进行通信。随着5g技术的发展,目前已经提出了边缘计算技术。可以在移动网络的核心网络110和无线接入网络130之间提供边缘计算层120。该边缘计算层120可以包括边缘计算设备122、124、

以及126等。以此方式,可以将某些计算任务迁移至更为靠近移动终端的边缘计算层120中。
19.将会理解,各个计算设备的工作负载可以随着时间变化,这导致某些计算设备的工作负载过高进而难以在可接受的时间内向移动终端提供服务。目前已经开发了基于各个计算设备的工作负载来动态调度计算任务的技术方案。例如,可以基于机器学习技术来确定计算设备的状态和用于调度计算任务的调度策略之间的关联关系,进而基于该关联关系来实时地确定调度策略。然而,上述技术方案需要大量训练数据和计算资源来执行训练。进一步,在已经获取关联关系之后,也需要较多的计算资源来预测相应的调度策略。由于边缘计算层120的计算资源有限,期望可以提供更为简单和有效的方式来调度计算任务。
20.为了解决已有技术方案中的缺陷,本公开的示例性实现方式提出了一种用于管理计算系统的技术方案。在该技术方案中,可以按照预定的调度类型,基于计算设备的当前状态和历史状态之间的比较,来选择相似历史状态并且使用在该相似历史状态下的历史调度策略,来执行计算任务的分配。以此方式,可以大大降低边缘计算层120的计算量,并且以更加快速和有效的方式执行任务调度。
21.在下文中,将参见图2描述根据本公开的示例性实现方式的概要。图2示意性示出
了根据本公开的示例性实现方式的用于管理计算系统的框图200。如图2所示,可以实时地采集计算设备122的当前状态210,并且可以从历史数据库240中获取多个历史状态220、

、222。可以确定当前状态210是否符合预定的调度类型260,如果符合则从历史数据库240中找到与当前状态210相匹配的历史状态222。进一步,可以确定与历史状态222相关联的历史调度策略232。以此方式,可以在仅需要较小计算量的情况下,迅速找到适合于当前状态210的历史调度策略232,并将其用于调度原本需要由计算设备122执行的计算任务250。
22.根据本公开的一个示例性实现方式,计算系统100可以包括边缘网络计算系统,并且计算设备122可以包括边缘网络计算系统中的边缘计算设备。为了便于描述起见,参见下文表1来提供计算系统100中计算设备122的配置信息。
23.表1计算设备的配置信息
[0024][0025][0026]
将会理解,上文表1仅仅示意性示出了计算设备122的配置信息的示例。根据本公开的一个示例性实现方式,计算设备122可以具有其他配置信息。具体地,表1的第1列示出了对象的标识符,第2列示出了相关对象的属性,并且第3列示出了各个属性的更新频率。如表1的第2行所示,计算设备122的属性可以包括如表1中第2列所示的多个属性;如表1的第3
行所示,计算设备122的相邻计算设备包括计算设备220、

、以及222;表1的第4行示出了计算设备122的环境信息,等等。将会理解,表1所示的信息可以随着计算系统100的运行而更新,因而可以按照表1所示的更新频率来不断获取最新的配置信息。
[0027]
在下文中,将参见图3描述根据本公开的一个示例性实现方式的更多细节。图3示意性示出了根据本公开的示例性实现方式的用于管理计算系统100的方法300的流程图。在框310处,获取计算系统100中的计算设备122的当前状态210以及多个历史状态220、

、以及222。在此,多个历史状态分别描述计算设备在多个历史时间点的历史状态220、

、以及222。将会理解,在此的历史状态可以包括计算设备122的历史状态。此时,可以存储在历史时间点的用于调度计算设备122的历史调度策略,因而可以使得找到的历史调度策略更加符合于计算设备122。根据本公开的一个示例性实现方式,历史状态可以包括计算系统100中的其他计算设备的历史状态。以此方式,可以尽量充分地利用计算任务调度的历史知识,来服务于未来的计算任务调度。
[0028]
根据本公开的一个示例性实现方式,可以基于每个计算设备的多个属性,来确定每个计算设备的状态。在下文中,仅以计算设备122作为示例描述如何获取当前状态210。具体地,可以获取计算设备122的多个属性,在此多个属性可以包括以下至少任一项:计算设备的工作负载、配置信息、存储的数据、连接的用户、提供的服务以及相邻计算设备的状态。参见图4描述有关确定状态的更多细节。
[0029]
图4示意性示出了根据本公开的示例性实现方式的用于计算设备的状态的框图400。如图4所示,可以分别基于多个属性来确定状态410中的各个字段。可以实时地采集如表1所示的各个硬件的工作负载。例如,工作负载411可以表示计算设备的中央处理器(和/或其他硬件计算资源)的当前工作负载,可以百分比来表示工作负载411。配置信息412可以表示计算设备的当前系统配置,存储的数据413表示在计算设备122中所存储的数据(例如,相关的用户数据,等等),提供的服务415表示计算设备122可以提供的服务(例如,视频服务、虚拟现实服务,等等),相邻计算设备的状态416可以包括该计算设备122周边的相邻计算设备的状态。具体地,可以基于上文表1所示来获取相关的配置信息412、存储的数据412、连接的用户414、提供的服务415以及相邻计算设备的状态416。
[0030]
根据本公开的一个示例性实现方式,可以基于如图4所示的多个属性确定计算设备122的当前状态210。例如,可以以特征向量的方式来表示计算设备122的当前状态210。在此特征向量可以包括如表4所示的多个字段,并且每个字段可以以子向量的方式表示,以便描述计算设备122的各个方面的状态。将会理解,可以以类似方式来存储历史状态。此时,当前状态210和每个历史状态220、

、以及222都可以以特征向量的方式来表示。
[0031]
返回图3描述搜索历史状态的更多细节。在图3的框320处,响应于确定当前状态210匹配于用于调度计算设备的调度类型260,在多个历史状态中搜索与当前状态210相匹配的历史状态222。将会理解,在此的调度类型260可以是从多个预定类型中选择的。可以预先定义多个调度类型:反应类型、防止类型以及预测类型,并且每个调度类型可以具有预定的阈值工作负载,当计算设备122的工作负载高于该阈值工作负载时,则触发相应的调度操作。
[0032]
具体地,反应类型的阈值工作负载高于防止类型的阈值工作负载,并且防止类型的阈值工作负载高于预测类型的阈值工作负载。根据本公开的一个示例性实现方式,反应
类型可以涉及最高的阈值工作负载(例如85%或者其他数值)。反应类型表示,此时计算设备122的工作负载已经超负荷并且应当向其他计算设备卸载计算任务250。防止类型可以涉及中等的阈值工作负载(例如50%或者其他数值)。防止类型表示,为了防止计算设备122的工作负载超负荷,应当向其他计算设备卸载计算任务250。预测类型可以涉及最低的阈值工作负载(例如,20%或者其他数值)。该预测类型可以表示,预测计算设备122有可能出现超负荷的风险,因而需要启动后续的调度过程,以便向其他计算设备卸载原本需要由计算设备122执行的计算任务250。
[0033]
利用本公开的示例性实现方式,可以为各个计算设备设置相同或者不同的调度类型260,以使得各个计算设备的工作负载保持在期望的水平。根据本公开的一个示例性实现方式,可以基于计算设备所提供的服务类型和/或享受服务的用户的类型来设置调度类型260。假设计算设备122用于向vip用户提供实时视频服务,则可以为该计算设备122配置预测类型的调度,以便确保计算设备122可以具有充足的资源,进而以最高的响应速度向这些vip用户提供服务。假设计算设备122用于向普通用户提供非实时服务,则可以为该计算设备122配置反应类型的调度。当计算设备122的状态难以满足响应速度要求时,可以将非实时服务相关的计算任务迁移至其他工作负载较低的计算设备。
[0034]
根据本公开的一个示例性实现方式,可以基于比较来在多个历史状态中搜索与当前状态210相匹配的历史状态222。具体地,可以确定当前状态210与多个历史状态中的每个历史状态之间的差异,并且从多个历史状态中选择差异满足预定条件的历史状态。具体地,可以比较当前状态210的特征向量与每个历史状态的特征向量,并且基于两个特征向量之间的距离(例如,欧式距离)来确定差异。例如,可以选择具有最小差异的历史状态222。
[0035]
根据本公开的一个示例性实现方式,可以设置预定阈值并且选择差异低于预定阈值的一个或多个历史状态。以此方式,找到的一个或多个历史状态可以为调度过程提供更多的灵活性。例如,可以在与某个历史状态相关联的历史调度策略不适合处理当前情况时,提供更多的备选调度策略。
[0036]
在框330处,可以确定与历史状态222相关联的历史调度策略232。将会理解,在此的历史调度策略232是指在采集历史状态222的历史时间点处执行的调度策略。该历史调度策略232是已经被验证为正确的调度策略,并且可以是技术专家设置的、基于机器学习技术确定的、或者以其他方式确定的。利用本公开的示例性实现方式,可以直接基于在过去已经执行的任务调度的历史经验来确定适合于处理当前情况的调度策略。以此方式,并不需要执行机器学习相关的复杂的计算过程,而是仅需要在历史数据库240中进行查找,即可获得适合的调度策略。
[0037]
在框340处,可以基于历史调度策略232,向计算系统100中的至少一个其他计算设备分配将要由计算设备122执行的计算任务250。将会理解,计算系统100可以包括多个其他计算设备,此时,需要从多个其他计算设备中找到适合的目的地计算设备。具体地,可以获取计算系统100中的多个其他计算设备的状态,以便基于多个其他计算设备的状态,从多个其他计算设备中选择至少一个其他计算设备。在下文中,将参见图5描述更多细节。
[0038]
图5示意性示出了根据本公开的示例性实现方式的计算设备的分布500的框图。如图5所示,各个计算设备的状态可能会随着时间而变化。在计算系统100启动的初始时间点,在计算系统100的区域510中可以仅包括计算设备122、124、

、126。随着计算系统100的运
行,计算设备520可以被添加到区域510中,并且计算设备126可以从区域510中被移除。因而,可以预先订阅计算系统100的拓扑结构的更新消息,以便及时地了解在计算设备122附近存在哪些相邻计算设备。
[0039]
将会理解,各个计算设备的状态可能会出现异常,可以不断地从各个计算设备接收心跳消息,以确定各个计算设备是否处于正常状态。假设长时间(例如,超过2分钟或者其他时间长度)没有接收到来自某个计算设备的心跳消息,可以将该计算设备标记为“异常设备”。根据本公开的一个示例性实现方式,可以实时地更新各个周边计算设备的状态,以便从各个周边计算设备中选择适合的目的地。
[0040]
将会理解,尽管图5仅示出了计算系统100的一个区域510,该计算系统100可以包括其他的更多区域。通常而言,向位于不同区域的计算设备卸载计算任务将会涉及复杂流程和较大资源开销,因而在本公开的上下文中仅示出了向区域510内部的其他计算设备卸载计算任务的示例。
[0041]
根据本公开的一个示例性实现方式,可以为每个计算设备维护相邻设备列表。在下文中,将参见图6描述更多相关细节。图6示意性示出了根据本公开的示例性实现方式的计算设备的相邻计算设备列表的框图600。如图6所示,可以为计算设备122提供相邻设备列表610,该相邻设备列表610可以包括计算设备122周边的、可以作为卸载目的地的一个或多个计算设备。将会理解,在此“相邻”是逻辑概念,而并非两个计算设备之间的物理距离。例如,可以基于两个设备之间的“跳”数来确定两个设备之间的逻辑距离,又例如,可以基于两个设备之间的带宽或者响应时间等来确定逻辑距离。
[0042]
随着计算系统的运行,可以不断地更新相邻设备列表610。例如,当网络拓扑发生变化并且计算设备520被添加至区域510后,向相邻设备列表610添加计算设备520。又例如,假设长时间没有接收到来自计算设备126的心跳消息,则可以从相邻设备列表610中删除计算设备126。进一步,可以按照预定时间间隔,获取计算设备122与各个相邻计算设备之间的逻辑距离,以便从相邻计算设备610中删除不符合要求的计算设备。
[0043]
根据本公开的一个示例性实现方式,可以基于找到的历史调度策略232来分配计算任务250。假设历史调度策略232定义:向计算设备124卸载计算任务250,此时可以查询该计算设备124是否存在于相邻设备列表610之中。如果查询结果为“是”,则可以向该计算设备124分配计算任务250。如果查询结果为“否”,则可以在相邻设备列表610中查找与计算设备124的状态类似(或者具有较高性能)的计算设备。进一步,可以向找到的计算设备分配计算任务250。例如,基于计算任务250的类型,可以选择与该类型相匹配的计算设备作为目的地。假设计算任务250涉及较大计算量,则可以选择具有充足计算资源的计算设备;假设计算任务250涉及较大数据量,则可以选择具有较高带宽的计算设备。根据本公开的一个示例性实现方式,可以在相邻设备列表610中查找具有较高整体性能的计算设备。
[0044]
根据本公开的一个示例性实现方式,参见图7描述有关计算资源调度的更多细节。图7示意性示出了根据本公开的示例性实现方式的用于分配计算任务的框图700。如图7所示,区域510内的多个用户设备710-1、710-2、710-3、

、710-4(统称为用户设备710)连接至计算设备122,并且由该计算设备122来提供服务。此时,乘坐火车730的大量用户可以携带各自的用户设备720-1、720-2、720-3、

、720-4(统称为用户设备720)。当火车730逐渐靠近区域510时,用户设备720将会切换至区域510内的各个计算设备122、124、126、

、520。
[0045]
根据本公开的一个示例性实现方式,可以预先采集计算设备122的当前状态210,并且搜索与当前状态210相类似的历史状态222,进而找到相应的历史调度策略232。假设历史调度策略232表示:由于列车730的到来,大量用户设备720即将连接至计算设备122,因而需要预先将计算设备122的某些计算任务250卸载至计算设备124和126。
[0046]
此时,可以基于历史调度策略232,来将与用户设备710相关的部分和/或全部计算任务迁移至计算设备124和126。假设此时计算设备124和126均处于低负载状态并且可以作为迁移目的地,可以基于历史调度策略232来将与用户设备710-1和710-2相关联的计算任务迁移至计算设备124,并且将与用户设备710-3和710-4相关联的计算任务迁移至计算设备126。
[0047]
将会理解,尽管图7示出了将计算任务迁移至计算设备124和126的示例,根据本公开的一个示例性实现方式,可以根据历史调度策略来将计算任务迁移至其他的目的地。根据本公开的一个示例性实现方式,可以基于计算设备122所提供的服务和用户类型,来从反应类型、防止类型以及预测类型中选择适合的调度类型。假设计算设备122主要向vip用户提供服务,则可以选择预测类型。以此方式,可以确保在大量用户设备720实际进入区域510之前,为vip用户预留足够的资源。根据本公开的一个示例性实现方式,可以为计算设备122选择反应类型的调度策。此时,可以在已经检测到过载状态时,使用典型的反应式卸载策略进行负载平衡。
[0048]
根据本公开的一个示例性实现方式,上述负载平衡操作之后,各个计算设备的工作负载将会发生变化。当大量用户设备720进入区域510后,可以基于各个计算设备的实时工作负载来选择哪个计算设备。根据本公开的一个示例性实现方式,可以将计算设备124指定为仅为vip用户提供服务,此时在大量用户设备720中,仅有具有vip权限的用户设备可以连接至计算设备124。以此方式,可以为vip用户预留充分的资源。
[0049]
将会理解,由于边缘计算层120中的计算设备的各种资源是有限的,常规的基于机器学习的卸载方法将会进一步加重各个计算设备的工作负载。利用本公开的示例性实现方式,通过记录计算设备的历史工作负载和相关的历史调度策略,可以以更加简单和有效的方式确定将在未来执行的调度策略。
[0050]
在上文图7所示的示例中,假设历史数据表明火车730在每天10:00到达区域510,并且在每天09:50将计算设备122的一部分计算任务卸载至其他计算设备。此时,可以提前从历史数据库中找到相匹配的历史调度策略232,并且预先执行卸载过程。假设采用预测类型的调度,当计算设备122的工作负载达到20%时,大量用户设备720尚未进入区域510但是已经存在工作负载急速升高的趋势。此时,可以预先触发卸载过程,以确保vip用户的体验。进一步,随着大量用户设备720进入区域510,计算设备122的工作负载进一步增加,此时可以陆续触发防止类型和反映类型的计算资源调度。
[0051]
利用本公开的示例性实现方式,通过分析各个计算设备的当前状态和查询历史数据库240,可以在不需要大量计算资源的情况下获得适合的调度策略。以此方式,可以大大降低对于计算资源的需求,进而实现边缘计算层120中的各个计算设备的负载平衡。
[0052]
根据本公开的一个示例性实现方式,如果在多个历史状态中不存在与当前状态210相匹配的历史状态,这表示在历史上不曾出现与当前状态类似的情况。此时,可以进一步调用机器学习算法,来预测将被执行的调度策略。具体地,可以获取描述计算设备的状态
和调度策略之间的关联关系的分配模型。将会理解,在此的分配模型可以是基于目前已经开发的和/或将在未来开发的训练算法获得的分配模型。该分配模型可以描述计算设备的状态和调度策略之间的关联关系。换言之,该分配模型记载了长期积累的选择调度策略的历史经验,并且可以基于该历史经验来找到合适的调度策略。
[0053]
具体地,可以向分配模型输入计算设备122的当前状态210,并且该分配模型将会输出与当前状态210相匹配的调度策略。继而,可以基于输出的调度策略,向计算系统100中的其他计算设备分配计算任务。进一步,可以利用当前状态210和输出的调度策略来更新历史数据库240。以此方式,可以不断地丰富历史数据库240的内容,以便服务于未来的计算任务调度。
[0054]
利用本公开的示例性实现方式,在直接从历史数据库240找到相似历史情况时,可以迅速提供相应的调度策略。进一步,当历史数据库240不包括相似历史情况时,可以基于机器学习过程来预测可行的调度策略。尽管此时预测过程可能会涉及较大计算量和较长的时间,随着历史数据库240的不断丰富,需要调用机器学习过程的频率将会逐渐降低。此时,可以以更为简单并且快速的方式确定调度策略。将会理解,尽管上文以计算设备122为示例描述了用于调度计算任务250的过程,可以在多个其他计算设备处执行上文描述的方法300。例如,可以在各个计算设备处周期性地执行方法300。
[0055]
在上文中已经参见图2至图7详细描述了根据本公开的方法的示例,在下文中将描述相应的装置的实现。根据本公开的示例性实现,提供了一种用于管理计算系统的装置。该装置包括:获取模块,配置用于获取计算系统中的计算设备的当前状态以及多个历史状态,多个历史状态分别描述计算系统中的计算设备在多个历史时间点的历史状态;搜索模块,配置用于响应于确定当前状态匹配于用于调度计算设备的调度类型,在多个历史状态中搜索与当前状态相匹配的历史状态;确定模块,配置用于确定与历史状态相关联的历史调度策略;以及分配模块,配置用于基于历史调度策略,向计算系统中的至少一个其他计算设备分配将要由计算设备执行的计算任务。根据本公开的示例性实现方式,该装置进一步包括用于执行上文描述的方法300中的其他步骤的模块。
[0056]
图8示意性示出了根据本公开的示例性实现的用于管理计算系统设备800的框图。如图所示,设备800包括中央处理单元(cpu)801,其可以根据存储在只读存储器(rom)802中的计算机程序指令或者从存储单元808加载到随机访问存储器(ram)803中的计算机程序指令,来执行各种适当的动作和处理。在ram 803中,还可存储设备800操作所需的各种程序和数据。cpu 801、rom 802以及ram 803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。
[0057]
设备800中的多个部件连接至i/o接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0058]
上文所描述的各个过程和处理,例如方法300,可由处理单元801执行。例如,在一些实现中,方法300可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实现中,计算机程序的部分或者全部可以经由rom 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序被加载到ram 803并由cpu 801执行时,
可以执行上文描述的方法300的一个或多个步骤。备选地,在其他实现中,cpu 801也可以以其他任何适当的方式被配置以实现上述过程/方法。
[0059]
根据本公开的示例性实现,提供了一种电子设备,包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行一种用于管理计算系统的方法。该方法包括:获取计算系统中的计算设备的当前状态以及多个历史状态,多个历史状态分别描述计算系统中的计算设备在多个历史时间点的历史状态;响应于确定当前状态匹配于用于调度计算设备的调度类型,在多个历史状态中搜索与当前状态相匹配的历史状态;确定与历史状态相关联的历史调度策略;以及基于历史调度策略,向计算系统中的至少一个其他计算设备分配将要由计算设备执行的计算任务。
[0060]
根据本公开的一个示例性实现方式,获取计算设备的当前状态包括:获取计算设备的多个属性,多个属性包括以下至少任一项:计算设备的工作负载、配置信息、存储的数据、连接的用户、提供的服务以及相邻计算设备的状态;以及基于多个属性确定当前状态。
[0061]
根据本公开的一个示例性实现方式,在多个历史状态中搜索与当前状态相匹配的历史状态包括:响应于确定当前状态与多个历史状态中的历史状态之间的差异满足预定条件,选择历史状态。
[0062]
根据本公开的一个示例性实现方式,向至少一个其他计算设备分配计算任务包括:获取计算系统中的多个其他计算设备的状态;以及基于多个其他计算设备的状态,从多个其他计算设备中选择至少一个其他计算设备。
[0063]
根据本公开的一个示例性实现方式,该方法进一步包括响应于以下至少任一项来确定多个其他计算设备:计算系统的拓扑结构的更新消息;以及来自多个其他计算设备的心跳消息。
[0064]
根据本公开的一个示例性实现方式,该方法进一步包括:基于多个其他计算设备的状态,更新至少一个其他计算设备。
[0065]
根据本公开的一个示例性实现方式,向至少一个其他计算设备分配计算任务包括:响应于确定存在至少一个其他计算设备,向至少一个其他计算设备分配计算任务。
[0066]
根据本公开的一个示例性实现方式,该方法进一步包括:响应于确定在多个历史状态中不存在与当前状态相匹配的历史状态,基于当前状态以及描述计算设备的状态和调度策略之间的关联关系的分配模型,确定与当前状态相对应的调度策略;以及基于调度策略,向计算系统中的其他计算设备分配计算任务。
[0067]
根据本公开的一个示例性实现方式,计算系统包括边缘网络计算系统,以及计算设备包括边缘网络计算系统中的边缘计算设备。
[0068]
根据本公开的一个示例性实现方式,调度类型包括以下至少任一项:反应类型、防止类型以及预测类型,反应类型的阈值工作负载高于防止类型的阈值工作负载,并且防止类型的阈值工作负载高于预测类型的阈值工作负载。
[0069]
根据本公开的示例性实现,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的方法。
[0070]
根据本公开的示例性实现,提供了一种计算机可读介质。计算机可读介质上存储
有机器可执行指令,当机器可执行指令在被至少一个处理器执行时,使得至少一个处理器实现根据本公开方法。
[0071]
本公开可以是方法、设备、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
[0072]
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0073]
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0074]
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实现中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
[0075]
这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0076]
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指
令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0077]
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0078]
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0079]
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献