CN113608856A - 节点调度方法、系统及装置 - Google Patents

节点调度方法、系统及装置 Download PDF

Info

Publication number
CN113608856A
CN113608856A CN202110926261.6A CN202110926261A CN113608856A CN 113608856 A CN113608856 A CN 113608856A CN 202110926261 A CN202110926261 A CN 202110926261A CN 113608856 A CN113608856 A CN 113608856A
Authority
CN
China
Prior art keywords
node
fog
fog node
candidate
computing task
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.)
Pending
Application number
CN202110926261.6A
Other languages
English (en)
Inventor
杨将林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Ezviz Software Co Ltd
Original Assignee
Hangzhou Ezviz Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Ezviz Software Co Ltd filed Critical Hangzhou Ezviz Software Co Ltd
Priority to CN202110926261.6A priority Critical patent/CN113608856A/zh
Publication of CN113608856A publication Critical patent/CN113608856A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供了节点调度方法、系统及装置。本申请中,当为源节点调度目标雾节点时,首先尝试离线推荐策略即根据源节点和雾节点的历史工作记录确定之前已成功执行过源节点的历史计算任务的目标雾节点,这样能够避免再为源节点重新选择待调度的雾节点,节省时间,提高调度效率。

Description

节点调度方法、系统及装置
技术领域
本申请涉及数据计算技术,特别涉及节点调度方法、系统及装置。
背景技术
在一些应用场景下,常常存在如下情况:一台设备本身不具备某一些计算能力比如人脸识别能力、但当前却需要该设备执行该计算能力对应的计算。以人脸识别能力为例,假若摄像机本身不具备人脸识别能力,但当前接收到报警需要该摄像机进一步进行人脸识别。一旦出现上述情况,则会导致无法满足业务需求。
发明内容
本申请实施例提供了节点调度方法、系统及装置,以实现在设备本身不具备某些计算的能力时通过调度雾节点执行相应上述计算,满足业务需求。
本申请实施例提供了第一种节点调度方法,该方法应用于节点管理设备,所述节点管理设备用于管理雾网络中的雾节点,该方法包括:
接收雾节点调度请求;所述雾节点调度请求是由源节点在当前不具备执行已获得的计算任务的能力时发送的;
查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合,若查找到所述候选雾节点集合且所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点,则从可用候选雾节点中选择目标雾节点执行所述计算任务,否则,依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务;
将所述目标雾节点反馈给所述源节点以使源节点将所述计算任务发送至目标雾节点上执行。
可选地,所述按照离线推荐策略确定与所述源节点相关联的候选雾节点集合包括:
确定第一历史时间段内被调度执行所述源节点的历史计算任务的参考雾节点;
获得各参考雾节点被调度执行所述源节点的历史计算任务的特征信息;所述特征信息至少包括:任务执行结果;所述任务执行结果为:任务执行成功、或者任务执行失败;
依据获得的各参考雾节点的所述特征信息和已训练的推荐学习算法确定与所述源节点相关联的候选雾节点集合;所述候选雾节点集合包括至少一个参考雾节点。
可选地,所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点通过以下步骤确定:
检查已获得的所述候选雾节点集合中候选雾节点的当前工作状态,若当前工作状态为空闲,则确定该候选雾节点为用于执行所述计算任务的可用候选雾节点。
可选地,所述依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务包括:
从所述雾网络中选择用于执行所述计算任务的雾节点集合;
依据已获得的所述雾节点集合中各雾节点的质量评分,从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务,其中,所述质量评分是基于雾节点在第二历史时间段被调度执行历史计算任务的记录确定。
可选地,所述从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务包括:
确定所述源节点当前所处的地理位置和所述源节点所属的运营商;
从所述雾网络中选择与所述源节点属于同城运营商或同省运营商、且用于执行所述计算任务的雾节点得到所述雾节点集合;或者,在所述雾网络中不存在与所述源节点属于同城运营商或同省运营商的雾节点时或者在所述雾网络中存在与所述源节点属于同城运营商或同省运营商的雾节点但该存在的雾节点的质量评分低于设定评分阈值时,从所述雾网络中选择与所述源节点属于同城或同省、且用于执行所述计算任务的雾节点,得到所述雾节点集合。
可选地,所述雾节点的质量评分通过以下步骤确定:
获得雾节点在第二历史时间段被调度执行历史计算任务的调度总次数;
若所述调度总次数小于预设次数阈值,则确定雾节点的质量评分为第一值;
若所述调度总次数大于或等于预设次数阈值,则当雾节点与源节点之间的网络连接建立失败率大于预设失败率阈值时,确定雾节点的质量评分为第二值,否则,依据雾节点在第二历史时间段被成功调度执行历史计算任务的次数与所述调度总次数确定雾节点的质量评分。
本申请实施例提供了第二种节点调度方法,该方法应用于任一节点设备,包括:
当接收到计算任务时,若确定当前不具备执行所述计算任务的能力,则作为源节点向节点管理设备发送雾节点调度请求,以由所述节点管理设备确定用于执行所述计算任务的目标雾节点;
在接收到所述节点管理设备反馈的用于执行所述计算任务的目标雾节点时,与所述目标雾节点建立连接,并通过建立的连接将所述计算任务发送给所述目标雾节点执行,以及,通过所述连接接收所述目标雾节点在执行所述计算任务后返回的计算结果。
一种节点调度系统,该系统包括节点管理设备、源节点、由节点管理设备管理的雾节点;
所述节点管理设备执行如上第一种方法;
所述源节点用于执行如上第二种方法。
一种节点调度装置,该装置应用于节点管理设备,所述节点管理设备用于管理雾网络中的雾节点;该装置包括:
调度请求单元,用于接收来自源节点发送的雾节点调度请求;所述雾节点调度请求是由所述源节点在当前不具备执行已获得的计算任务的能力时发送的;
调度单元,用于查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合,若查找到所述候选雾节点集合且所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点,则从可用候选雾节点中选择目标雾节点执行所述计算任务,否则,依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务;
节点反馈单元,用于将所述目标雾节点反馈给所述源节点以使源节点将所述计算任务发送至目标雾节点上执行。
本申请实施例还提供了一种电子设备。该电子设备包括:处理器和机器可读存储介质;
所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现上述公开的方法的步骤。
由以上技术方案可以看出,在本实施例中,当为源节点调度目标雾节点时,首先尝试离线推荐策略即根据源节点和雾节点的历史工作记录确定之前已成功执行过源节点的历史计算任务的目标雾节点,这样能够避免再为源节点重新选择待调度的雾节点,节省时间,提高调度效率;
进一步地,在本实施例中,当尝试离线推荐策略调度雾节点失败时,则动态依据雾网络中雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行源节点的计算任务,这能保证源节点的计算任务最大可能到达雾节点,且在雾节点中顺利执行,保证了业务需求。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请实施例提供的方法流程图;
图2为本申请实施例提供的确定与源节点相关联的候选雾节点集合的流程图;
图3为本申请实施例提供的依据雾网络中用于执行计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点的流程图;
图4为本申请实施例提供的另一方法流程图;
图5为本申请提供的实施例组网示意图;
图6为本申请实施例提供的系统结构图;
图7为本申请实施例提供的装置结构图;
图8为本申请实施例提供的另一装置结构图;
图9为本申请实施例提供的电子设备结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
参见图1,图1为本申请实施例提供的第一方法流程图。该流程应用于节点管理设备。作为一个实施例,这里的节点管理设备可部署在云平台(也称云计算平台,可基于硬件资源和软件资源提供计算、网络和存储等服务)。
在本实施例中,节点管理设备可用于管理雾网络中的雾节点(也称雾计算节点)。所谓雾网络,其介于接入网络层(access network layer)和核心网络层(core networklayer)之间,也称雾层(fog layer)。在雾网络中部署贴近用户的、高密度的计算设备,可极大地降低传统云计算的时延,同时也能给予用户移动性的支持,这些计算设备被称为雾节点(fog node)。在应用中,可以将雾节点按照其部署位置和功能分成3类:雾边缘节点(fogedge node)、微雾(foglet)和雾服务器(fog server),本实施例不具体限定雾节点的具体实现形式,统一称为雾节点。
如图1所示,该流程可包括以下步骤:
步骤101,节点管理设备雾节点调度请求。
可选地,这里的雾节点调度请求可由源节点在当前不具备执行已获得的计算任务的能力时发送的。在应用中,这里的源节点可为接入层中的网络设备、或者其他具有计算能力的节点比如网络摄像机等,均可统称源节点,本实施例并不限定。
在一些突发事件出现时常会出现一些节点需要执行计算任务、但因为能力有限不具备执行该计算任务的能力的情况。以安装在某校园内的摄像头为例,摄像头实时检测进入校园中的人员,一旦发现可疑人员则会报警,针对该报警则需要进一步进行人脸识别,以确定可疑人员是否真的可疑。但当前摄像头属于低端产品,其只是用于监控,并不具备人脸识别的能力。这种情况即出现了上述情况:摄像头检测到需要执行的计算任务、但当前不具备执行该计算任务作的能力。
一旦诸如上述摄像头等的节点在检测到计算任务但当前不具备执行计算任务的能力时,则会作为源节点向上述节点管理设备发送雾节点调度请求,即如步骤101所述,节点管理设备最终会接收到来自源节点发送的雾节点调度请求。
步骤102,节点管理设备查找已按照离线推荐策略确定的与源节点相关联的候选雾节点集合,若查找到候选雾节点集合且候选雾节点集合当前存在用于执行上述计算任务的可用候选雾节点,则从可用候选雾节点中选择目标雾节点执行上述计算任务,否则,依据雾网络中用于执行上述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行上述计算任务。
通过步骤102可以看出,节点管理设备在接收到雾节点调度请求时,首先尝试离线推荐策略调度,即:查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合。一旦查找到候选雾节点集合,则对此候选雾节点集合进行原子性操作,从候选雾节点集合中找到用于执行上述计算任务且空闲的候选雾节点(也称可用候选雾节点)。在本实施例中,候选雾节点集合是根据雾节点之前执行上述源节点的历史计算任务的记录(也即源节点和雾节点之间的离线匹配记录)实现的。下文会重点描述候选雾节点集合,这里暂不赘述。
作为一个实施例,上述从候选雾节点集合中查找用于执行上述计算任务且空闲的候选雾节点(也称可用候选雾节点)可包括:检查已获得的候选雾节点集合中候选雾节点的当前工作状态,若当前工作状态为空闲,则确定该候选雾节点为用于执行上述计算任务的可用候选雾节点。
在本实施例中,雾节点会在自身的工作状态发生切换时上报状态给节点管理设备。初始,雾节点自身的工作状态为空闲,会上报空闲工作状态给节点管理设备。在本实施例中,工作状态发生切换是指从空闲变为工作,或者从工作变为空闲。在本实施例中,对于上报的工作状态为空闲的雾节点,节点管理设备会在全局空闲雾节点列表中记录,比如在全局空闲雾节点列表中记录工作状态为空闲的雾节点的节点标识等,以便于后续查询工作状态为空闲的雾节点。
基于此,在本实施例中,检查已获得的候选雾节点集合中候选雾节点的当前工作状态可包括:针对候选雾节点集合中每一候选雾节点,检查该候选雾节点是否已记录在全局空闲雾节点列表中,如果是,确定该候选雾节点的当前工作状态为空闲,该候选雾节点可作为用于执行计算任务的可用候选雾节点,否则,定该候选雾节点的当前工作状态为工作,该候选雾节点不可作为用于执行计算任务的可用候选雾节点。
作为一个实施例,在本实施例中,候选雾节点集合可按照顺序排列候选雾节点。这里的顺序可为质量评分从高至低的顺序(下文会描述如何计算质量评分)等,本实施例并不具体限定。以候选雾节点集合中按照质量评分从高至低的顺序排列候选雾节点,则本实施例中,可按照顺序将序列中首个候选雾节点作为当前候选雾节点,检查该当前候选雾节点是否已记录在全局空闲雾节点列表中,如果是,确定当前候选雾节点的当前工作状态为空闲,当前候选雾节点可作为用于执行计算任务的可用候选雾节点,结束当前流程,否则,若当前候选雾节点不为序列中最后一个候选雾节点,则将序列中当前候选雾节点的下一个候选雾节点作为当前候选雾节点,返回检查该当前候选雾节点是否已记录在全局空闲雾节点列表中的步骤。
在本实施例中,假若查不到上述候选雾节点集合,或者查找到上述候选雾节点集合但候选雾节点集合不存在上述可用候选雾节点,则尝试按照静态规则策略调度,即如上述步骤102描述,依据雾网络中用于执行上述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行上述计算任务。下面会重点描述如何依据雾网络中用于执行上述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行上述计算任务,这里暂不赘述。
最终通过上述步骤102,节点管理设备选择了用于执行上述计算任务的目标雾节点。一旦节点管理设备选择了用于执行上述计算任务的目标雾节点之后,则执行以下步骤103。
步骤103,节点管理设备将目标雾节点反馈给源节点以使源节点将计算任务发送至目标雾节点上执行。
至此,完成图1所示流程。
通过图1所示流程可以看出,在本实施例中,当为源节点调度目标雾节点时,首先尝试离线推荐策略即根据源节点和雾节点的历史工作记录确定之前已成功执行过源节点的历史计算任务的目标雾节点,这样能够避免再为源节点重新选择待调度的雾节点,节省时间,提高调度效率;
进一步地,在本实施例中,当尝试离线推荐策略调度雾节点失败时,则动态依据雾网络中雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行源节点的计算任务,这能保证源节点的计算任务最大可能到达雾节点,且在雾节点中顺利执行,保证了业务需求。
下面通过图2描述上述步骤102中如何按照离线推荐策略确定与源节点相关联的候选雾节点集合。
参见图2,图2为本申请实施例提供的确定与源节点相关联的候选雾节点集合的流程图。如图2所示,该流程可包括以下步骤:
步骤201,确定第一历史时间段内被调度执行上述源节点的历史计算任务的参考雾节点。
可选地,在本实施例中,第一历史时间段可根据实际需求设置,比如设置为历史7天。
步骤202,获得各参考雾节点被调度执行所述源节点的历史计算任务的特征信息。
可选地,这里的特征信息至少包括:任务执行结果。比如,任务执行结果可包括任务执行成功、或者任务执行失败等,本实施例并不具体限定。当然,上述特征信息还可包括:任务执行时长等,这里不再一一解释。
步骤203,依据获得的各参考雾节点的特征信息和已训练的推荐学习算法确定与源节点相关联的候选雾节点集合;候选雾节点集合包括至少一个参考雾节点。
以特征信息包括任务执行结果为例,可选地,在本步骤203中,可依据已训练的推荐学习算法将任务执行成功的参考雾节点确定为与源节点相关联的候选雾节点集合。
再以特征信息包括任务执行结果和任务执行时长为例,可选地,在本步骤203中,可依据已训练的推荐学习算法将任务执行成功且任务执行时长小于设定时长的参考雾节点确定为与源节点相关联的候选雾节点集合。
至此,通过上述步骤201至步骤203最终实现了如何确定与源节点相关联的候选雾节点集合。需要说明的是,与源节点相关联的候选雾节点集合可定时按照图2所示流程进行更新。
在本实施例中,一旦确定与源节点相关联的候选雾节点集合,则可将源节点的标识(ID)与候选雾节点集合关联记录。另外,上述雾节点调度请求也会携带源节点的标识。基于此,上述步骤102中查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合可包括:在本地记录中查找与雾节点调度请求携带的源节点标识相关联的候选雾节点集合。
下面对上述步骤102中如何依据雾网络中用于执行上述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行上述计算任务进行描述:
参见图3,图3为本申请实施例提供的依据雾网络中用于执行计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点的流程图。如图3所示,该流程可包括以下步骤:
步骤301,从雾网络中选择用于执行上述计算任务的雾节点集合。
可选地,在本实施例中,在从雾网络中选择用于执行上述计算任务的雾节点集合时先确定源节点当前所处的地理位置和源节点所属的运营商。可选地,在本实施例中,可依赖雾节点调度请求中携带的源节点的IP地址解析源节点当前所处的地理位置和所述源节点所属的运营商。
之后,作为一个实施例,可优先从雾网络中选择与源节点属于同城运营商或同省运营商、且用于执行上述计算任务的雾节点,即得到上述雾节点集合。
作为另一实施例,在雾网络中不存在与源节点属于同城运营商或同省运营商的雾节点时,从雾网络中选择与源节点属于同城或同省、且用于执行上述计算任务的雾节点,即得到上述雾节点集合。或者,在雾网络中存在与源节点属于同城运营商或同省运营商的雾节点,但此时与源节点属于同城运营商或同省运营商的雾节点的质量评分都低于设定评分阈值比如60分,则从雾网络中选择与源节点属于同城或同省、且用于执行上述计算任务的雾节点,即得到上述雾节点集合。下文会描述雾节点的质量评分,这里暂不赘述。
步骤302,依据已获得的所述雾节点集合中各雾节点的质量评分,从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务。
在本实施例中,雾节点的质量评分是基于雾节点在第二历史时间段被调度执行历史计算任务的记录确定。可选地,下面通过以下步骤a1至步骤a2描述如何获得雾节点的质量评分:
步骤a1,获得雾节点在第二历史时间段被调度执行历史计算任务的调度总次数。
在本实施例中,第二历史时间段可根据实际需求设置,比如设置14天等,本实施例并不具体限定。
步骤a2,若调度总次数小于预设次数阈值,则确定雾节点的质量评分为第一值,若调度总次数大于或等于预设次数阈值,则当与源节点之间的网络连接建立失败率大于预设失败率阈值时,确定雾节点的质量评分为第二值,否则,依据雾节点在第二历史时间段被成功调度执行历史计算任务的次数与所述调度总次数确定雾节点的质量评分。
在本实施例中,预设次数阈值可根据实际需求设置,比如设置为10次等,本实施例并不具体限定。
当调度总次数小于预设次数阈值,则表示该雾节点不被经常使用,此时可直接确定雾节点的质量评分为第一值比如60分。
当调度总次数大于或等于预设次数阈值,若该雾节点与源节点之间的网络连接建立失败率大于预设失败率阈值,则表示该雾节点被调度的机率很小,鉴于负载均衡,为提高该雾节点的利用率,则此时可将该雾节点的质量评分设置为比较大的一个值(记为第二值),比如设置为100分。当然,若该雾节点与源节点之间的网络连接建立失败率小于或等于预设失败率阈值,则可依据雾节点在第二历史时间段被成功调度执行历史计算任务的次数与调度总次数确定雾节点的质量评分,比如通过如下公式实现:
质量评分=雾节点成功调度执行历史计算任务的次数/调度总次数
最终,通过上述步骤a1至步骤a2实现了如何确定雾节点集合中各雾节点的质量评分。需要说明的是,雾节点集合中各雾节点的质量评分也会定时更新,具体更新流程可参考上述步骤a1至步骤a2。
可选地,在本实施例中,在执行步骤303时,针对雾节点集合,先按照质量评分从高至低的顺序排列各雾节点,之后,将序列中首个雾节点作为当前雾节点,检查该当前雾节点是否已记录在全局空闲雾节点列表中,如果是,确定当前雾节点的当前工作状态为空闲,将该当前雾节点作为目标雾节点执行上述计算任务,否则,若当前雾节点不为序列中最后一个雾节点,则将序列中当前雾节点之后的雾节点作为当前雾节点,返回执行检查该当前雾节点是否已记录在全局空闲雾节点列表中的步骤。需要说明的是,按照此种方法选择目标雾节点时,若发现存在工作状态为空闲的雾节点,但该雾节点的质量评分低于设定评分阈值,此时,作为一个实施例,可认为不存在目标雾节点,输出不存在目标雾节点的提示;或者,作为另一个实施例,为了保证业务需求将质量评分低于设定评分阈值的空闲雾节点作为目标雾节点,本实施例并不具体限定。
需要说明的是,在本实施例中,一旦选择目标雾节点后,则通过原子性操作将目标雾节点从全局空闲雾节点列表中删除。
以上是站在节点管理设备的角度描述的本申请实施例提供的方法,下面站在源节点的角度描述:
参见图4,图4为本申请实施例提供的另一方法流程图。该方法应用于任一节点设备。这里的节点设备可参考如上描述的源节点,这里不再赘述。
如图4所示,该流程可包括以下步骤:
步骤401,当接收到计算任务时,若确定当前不具备执行该计算任务的能力,则作为源节点向节点管理设备发送雾节点调度请求,以由节点管理设备确定用于执行上述计算任务的目标雾节点。
当向节点管理设备发送雾节点调度请求后,节点管理设备在收到雾节点调度请求,会按照如图1所示流程执行,以最终确定用于执行上述计算任务的目标雾节点。
步骤402,在接收到节点管理设备反馈的用于执行计算任务的目标雾节点时,与目标雾节点建立连接,并通过建立的连接将计算任务发送给目标雾节点执行,以及,通过所述连接接收所述目标雾节点在执行所述计算任务后返回的计算结果。
至此,完成图4所示流程。
通过图4所示流程实现了当源节点检测到需要执行的计算任务、但当前不具备执行该计算任务的能力时,请求节点管理设备调度选择用于执行上述计算任务的目标雾节点,由目标雾节点帮助源节点执行上述计算任务,实现了计算任务的分布式计算方式,满足业务需求。
下面结合一个组网本申请实施例进行举例描述:
参见图5,图5为本申请提供的实施例组网图。在图5所示的实施例组网中,节点500在检测到计算任务时发现当前不具备执行计算任务的能力,则节点500作为源节点(以下以源节点为例描述)会向节点管理设备发送雾节点调度请求。雾节点调度请求携带源节点的标识。
节点管理设备根据雾节点调度请求携带的源节点标识在离线推荐的候选雾节点集合记录中查找与该源节点标识关联的候选雾节点集合。候选雾节点集合中候选雾节点的数量有限制,比如最多100个。
节点管理设备针对候选雾节点集合中的候选雾节点,逐个与已获得的全局空闲雾节点列表对比,若全局空闲雾节点列表存在候选雾节点,则将该候选雾节点可用候选雾节点,并从全局空闲雾节点列表中删除此候选雾节点。之后从可用候选雾节点中选择用于执行计算任务的目标雾节点来执行上述计算任务。
节点管理设备在从候选雾节点集合中无法选择出目标雾节点(也即离线推荐候雾节点失败),则尝试静态规则调度策略,具体为:
先根据源节点的IP,解析得到源节点所属的运营商和源节点的地理位置。
之后,启用本地检索引擎,按源节点所属的运营商和源节点的地理位置,优先在雾网络中查询与源节点同城同运营商、同省同运营商的空闲雾节点。对查询到的空闲雾节点集按照质量评分排序,获取质量评分最高的空闲雾节点。
若该质量评分最高的空闲雾节点的质量评分大于或等于设定评分阈值比如60分,则将该质量评分最高的空闲雾节点作为目标雾节点来执行上述计算任务,并从全局空闲雾节点列表中删除此目标雾节点。否则,继续尝试查找同城、同省的不同运营商的空闲雾节点,对查找到的空闲雾节点集按照质量评分排序,获取质量评分最高的空闲雾节点。若该质量评分最高的空闲雾节点的质量评分大于或等于设定评分阈值比如60分,则将该质量评分最高的空闲雾节点作为目标雾节点来执行上述计算任务,并从全局空闲雾节点列表中删除此目标雾节点,否则,返回空或者查找不到雾节点的消息给源节点。本实施例以查找到目标雾节点为例。
节点管理设备将目标雾节点反馈给上述源节点。这里以目标雾节点为图5所示组网中的雾节点501_1为例。
源节点尝试与雾节点501_1建立连接,并通过建立的连接将计算任务发送给雾节点501_1执行,以及,通过所述连接接收雾节点501_1在执行所述计算任务后返回的计算结果。
在本实施例中,雾节点501在收到计算任务时,表示开始从空闲状态切换为工作状态,会将当前切换为工作状态的消息上报给节点管理设备。而当雾节点501完成计算任务并把计算结果发给源节点后,则表示开始从工作状态切换为空闲状态,会将当前切换为空闲状态的消息上报给节点管理设备。节点管理设备收到雾节点切换为空闲状态的消息后,将雾节点记录至全局空闲雾节点列表中。
至此,完成实施例的描述。
以上对本申请实施例提供的方法进行了描述,下面对本申请实施例提供的系统和装置进行描述:
参见图6,图6为本申请实施例提供的系统结构图。该系统可包括:节点管理设备、源节点、由节点管理设备管理的雾节点;
其中,节点管理设备执行如图1所示的方法;
源节点用于执行如图4所示的方法。
对应地,本申请实施例还提供了如图7所示的装置结构图。参见图7,图7为本申请实施例提供的第一装置结构图。该装置应用于节点管理设备,适用于图1所示流程。
如图7所示,该装置可包括:
调度请求单元,用于接收雾节点调度请求;所述雾节点调度请求是由源节点在当前不具备执行已获得的计算任务的能力时发送的;
调度单元,用于查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合,若查找到所述候选雾节点集合且所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点,则从可用候选雾节点中选择目标雾节点执行所述计算任务,否则,依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务;
节点反馈单元,用于将所述目标雾节点反馈给所述源节点以使源节点将所述计算任务发送至目标雾节点上执行。
可选地,调度单元按照离线推荐策略确定与所述源节点相关联的候选雾节点集合包括:
确定第一历史时间段内被调度执行所述源节点的历史计算任务的参考雾节点;
获得各参考雾节点被调度执行所述源节点的历史计算任务的特征信息;所述特征信息至少包括:任务执行结果;所述任务执行结果为:任务执行成功、或者任务执行失败;
依据获得的各参考雾节点的所述特征信息和已训练的推荐学习算法确定与所述源节点相关联的候选雾节点集合;所述候选雾节点集合包括至少一个参考雾节点。
可选地,候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点通过以下步骤确定:
检查已获得的所述候选雾节点集合中候选雾节点的当前工作状态,若当前工作状态为空闲,则确定该候选雾节点为用于执行所述计算任务的可用候选雾节点。
可选地,调度单元依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务包括:
从所述雾网络中选择用于执行所述计算任务的雾节点集合;
依据已获得的所述雾节点集合中各雾节点的质量评分,从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务,其中,所述质量评分是基于雾节点在第二历史时间段被调度执行历史计算任务的记录确定。
可选地,调度单元所述从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务包括:
确定所述源节点当前所处的地理位置和所述源节点所属的运营商;
从所述雾网络中选择与所述源节点属于同城运营商或同省运营商、且用于执行所述计算任务的雾节点得到所述雾节点集合;或者,在所述雾网络中不存在与所述源节点属于同城运营商或同省运营商的雾节点时或者在所述雾网络中存在与所述源节点属于同城运营商或同省运营商的雾节点但该存在的雾节点的质量评分低于设定评分阈值时,从所述雾网络中选择与所述源节点属于同城或同省、且用于执行所述计算任务的雾节点,得到所述雾节点集合。
可选地,所述雾节点的质量评分通过以下步骤确定:
获得雾节点在第二历史时间段被调度执行历史计算任务的调度总次数;
若所述调度总次数小于预设次数阈值,则确定雾节点的质量评分为第一值;
若所述调度总次数大于或等于预设次数阈值,则当雾节点与源节点之间的网络连接建立失败率大于预设失败率阈值时,确定雾节点的质量评分为第二值,否则,依据雾节点在第二历史时间段被成功调度执行历史计算任务的次数与所述调度总次数确定雾节点的质量评分。
至此,完成图7所示装置的结构图。
对应地,本申请实施例还提供图8所示装置的结构图。
参见图8,图8为本申请实施例提供的第二装置结构图。该装置应用于任一节点设备,对应图4所示的流程。
如图8所示,该装置可包括:
请求单元,用于当接收到计算任务时,若确定当前不具备执行所述计算任务的能力,则以所述节点设备作为源节点向节点管理设备发送雾节点调度请求,以由所述节点管理设备按照确定用于执行所述计算任务的目标雾节点;
处理单元,用于在接收到所述节点管理设备反馈的用于执行所述计算任务的目标雾节点时,与所述目标雾节点建立连接,并通过建立的连接将所述计算任务发送给所述目标雾节点执行,以及,通过所述连接接收所述目标雾节点在执行所述计算任务后返回的计算结果。
本申请实施例还提供了图7或图8所示装置的硬件结构。参见图9,图9为本申请实施例提供的电子设备结构图。如图9所示,该硬件结构可包括:处理器和机器可读存储介质,机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现本申请上述示例公开的方法。
基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的方法。
示例性的,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种节点调度方法,其特征在于,该方法应用于节点管理设备,所述节点管理设备用于管理雾网络中的雾节点;该方法包括:
接收雾节点调度请求;所述雾节点调度请求是由源节点在当前不具备执行已获得的计算任务的能力时发送的;
查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合,若查找到所述候选雾节点集合且所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点,则从可用候选雾节点中选择目标雾节点执行所述计算任务,否则,依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务;
将所述目标雾节点反馈给所述源节点以使源节点将所述计算任务发送至目标雾节点上执行。
2.根据权利要求1所述的方法,其特征在于,所述按照离线推荐策略确定与所述源节点相关联的候选雾节点集合包括:
确定第一历史时间段内被调度执行所述源节点的历史计算任务的参考雾节点;
获得各参考雾节点被调度执行所述源节点的历史计算任务的特征信息;所述特征信息至少包括:任务执行结果;所述任务执行结果为:任务执行成功、或者任务执行失败;
依据获得的各参考雾节点的所述特征信息和已训练的推荐学习算法确定与所述源节点相关联的候选雾节点集合;所述候选雾节点集合包括至少一个参考雾节点。
3.根据权利要求1所述的方法,其特征在于,所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点通过以下步骤确定:
检查已获得的所述候选雾节点集合中候选雾节点的当前工作状态,若当前工作状态为空闲,则确定该候选雾节点为用于执行所述计算任务的可用候选雾节点。
4.根据权利要求1所述的方法,其特征在于,所述依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务包括:
从所述雾网络中选择用于执行所述计算任务的雾节点集合;
依据已获得的所述雾节点集合中各雾节点的质量评分,从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务,其中,所述质量评分是基于雾节点在第二历史时间段被调度执行历史计算任务的记录确定。
5.根据权利要求4所述的方法,其特征在于,所述从所述雾节点集合中选择当前工作状态为空闲、且质量评分高于设定值的至少一个雾节点作为所述目标雾节点执行所述计算任务包括:
确定所述源节点当前所处的地理位置和所述源节点所属的运营商;
从所述雾网络中选择与所述源节点属于同城运营商或同省运营商、且用于执行所述计算任务的雾节点得到所述雾节点集合;或者,在所述雾网络中不存在与所述源节点属于同城运营商或同省运营商的雾节点时或者在所述雾网络中存在与所述源节点属于同城运营商或同省运营商的雾节点但该存在的雾节点的质量评分低于设定评分阈值时,从所述雾网络中选择与所述源节点属于同城或同省、且用于执行所述计算任务的雾节点,得到所述雾节点集合。
6.根据权利要求4所述的方法,其特征在于,所述雾节点的质量评分通过以下步骤确定:
获得雾节点在第二历史时间段被调度执行历史计算任务的调度总次数;
若所述调度总次数小于预设次数阈值,则确定雾节点的质量评分为第一值;
若所述调度总次数大于或等于预设次数阈值,则当雾节点与源节点之间的网络连接建立失败率大于预设失败率阈值时,确定雾节点的质量评分为第二值,否则,依据雾节点在第二历史时间段被成功调度执行历史计算任务的次数与所述调度总次数确定雾节点的质量评分。
7.一种节点调度方法,其特征在于,该方法应用于任一节点设备,包括:
当接收到计算任务时,若确定当前不具备执行所述计算任务的能力,则作为源节点向节点管理设备发送雾节点调度请求,以由所述节点管理设备按照如权利要求1至6任一方法确定用于执行所述计算任务的目标雾节点;
在接收到所述节点管理设备反馈的用于执行所述计算任务的目标雾节点时,与所述目标雾节点建立连接,并通过建立的连接将所述计算任务发送给所述目标雾节点执行,以及,通过所述连接接收所述目标雾节点在执行所述计算任务后返回的计算结果。
8.一种节点调度系统,其特征在于,该系统包括节点管理设备、源节点、由节点管理设备管理的雾节点;
所述节点管理设备执行如权利要求1至6任一所述的方法;
所述源节点用于执行如权利要求7所述的方法。
9.一种节点调度装置,其特征在于,该装置应用于节点管理设备,所述节点管理设备用于管理雾网络中的雾节点;该装置包括:
调度请求单元,用于接收雾节点调度请求;所述雾节点调度请求是由源节点在当前不具备执行已获得的计算任务的能力时发送的;
调度单元,用于查找已按照离线推荐策略确定的与所述源节点相关联的候选雾节点集合,若查找到所述候选雾节点集合且所述候选雾节点集合当前存在用于执行所述计算任务的可用候选雾节点,则从可用候选雾节点中选择目标雾节点执行所述计算任务,否则,依据雾网络中用于执行所述计算任务的雾节点的当前工作状态选择当前处于空闲状态的目标雾节点执行所述计算任务;
节点反馈单元,用于将所述目标雾节点反馈给所述源节点以使源节点将所述计算任务发送至目标雾节点上执行。
10.一种电子设备,其特征在于,该电子设备包括:处理器和机器可读存储介质;
所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现权利要求1-7任一项的方法步骤。
CN202110926261.6A 2021-08-12 2021-08-12 节点调度方法、系统及装置 Pending CN113608856A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110926261.6A CN113608856A (zh) 2021-08-12 2021-08-12 节点调度方法、系统及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110926261.6A CN113608856A (zh) 2021-08-12 2021-08-12 节点调度方法、系统及装置

Publications (1)

Publication Number Publication Date
CN113608856A true CN113608856A (zh) 2021-11-05

Family

ID=78340561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110926261.6A Pending CN113608856A (zh) 2021-08-12 2021-08-12 节点调度方法、系统及装置

Country Status (1)

Country Link
CN (1) CN113608856A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116719632A (zh) * 2023-08-11 2023-09-08 腾讯科技(深圳)有限公司 任务调度方法、装置、设备以及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109862050A (zh) * 2017-11-30 2019-06-07 中兴通讯股份有限公司 雾节点通信业务实现方法及装置、雾节点、存储介质
CN112073542A (zh) * 2020-11-12 2020-12-11 腾讯科技(深圳)有限公司 雾节点调度方法、装置、计算机设备和存储介质
CN112416596A (zh) * 2020-12-01 2021-02-26 新华三人工智能科技有限公司 一种节点调度方法、装置及设备
CN112650576A (zh) * 2021-01-22 2021-04-13 百度在线网络技术(北京)有限公司 资源调度方法、装置、设备、存储介质及计算机程序产品
CN113037800A (zh) * 2019-12-09 2021-06-25 华为技术有限公司 作业调度方法以及作业调度装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109862050A (zh) * 2017-11-30 2019-06-07 中兴通讯股份有限公司 雾节点通信业务实现方法及装置、雾节点、存储介质
CN113037800A (zh) * 2019-12-09 2021-06-25 华为技术有限公司 作业调度方法以及作业调度装置
CN112073542A (zh) * 2020-11-12 2020-12-11 腾讯科技(深圳)有限公司 雾节点调度方法、装置、计算机设备和存储介质
CN112416596A (zh) * 2020-12-01 2021-02-26 新华三人工智能科技有限公司 一种节点调度方法、装置及设备
CN112650576A (zh) * 2021-01-22 2021-04-13 百度在线网络技术(北京)有限公司 资源调度方法、装置、设备、存储介质及计算机程序产品

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116719632A (zh) * 2023-08-11 2023-09-08 腾讯科技(深圳)有限公司 任务调度方法、装置、设备以及介质
CN116719632B (zh) * 2023-08-11 2024-03-15 腾讯科技(深圳)有限公司 任务调度方法、装置、设备以及介质

Similar Documents

Publication Publication Date Title
CN111083722B (zh) 模型的推送、模型的请求方法及装置、存储介质
CN106982236B (zh) 一种信息处理方法、装置和系统
CN105843650A (zh) 一种智能终端中的应用程序管理方法和装置
CN109756382B (zh) 故障定位方法和装置
CN112765182A (zh) 云服务器集群间的数据同步方法及装置
CN111083179A (zh) 物联网云平台、基于物联网云平台的设备交互方法及装置
US9588983B2 (en) Data classification for adaptive synchronization
CN105284161B (zh) 网络注册方法、装置及移动终端
CN113608856A (zh) 节点调度方法、系统及装置
CN108399175B (zh) 一种数据存储、查询方法及其装置
US8756093B2 (en) Method of monitoring a combined workflow with rejection determination function, device and recording medium therefor
CN108509296B (zh) 一种处理设备故障的方法和系统
US10025859B2 (en) Method and system for second-degree friend query
CN113301558B (zh) 一种消息传输方法、设备、系统及存储介质
CN111050398B (zh) 寻呼方法、装置、设备及存储介质
CN110609707B (zh) 在线数据处理系统生成方法、装置及设备
CN108616576B (zh) 一种调度应用服务器的方法和装置
CN107422991B (zh) 一种存储策略管理系统
CN108259340B (zh) 一种拓扑信息传输方法和装置
CN107656936B (zh) 一种即时通信领域的终端数据库构建方法
CN112671636B (zh) 群组消息推送方法、装置、计算机设备和存储介质
CN113179252B (zh) 一种安全策略管理方法、装置、设备及机器可读存储介质
CN114585035A (zh) 一种语音通话方法、装置和计算机可读存储介质
CN109062694B (zh) 一种将应用程序迁移到云平台的方法
CN114328129A (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