CN111314241B - 一种任务调度方法及调度系统 - Google Patents
一种任务调度方法及调度系统 Download PDFInfo
- Publication number
- CN111314241B CN111314241B CN202010053178.8A CN202010053178A CN111314241B CN 111314241 B CN111314241 B CN 111314241B CN 202010053178 A CN202010053178 A CN 202010053178A CN 111314241 B CN111314241 B CN 111314241B
- Authority
- CN
- China
- Prior art keywords
- task
- node
- message queue
- execution node
- task execution
- 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
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 abstract description 6
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种任务调度方法及调度系统,步骤为在混合云环境下启动任务执行节点,获取动态秘钥建立连接;注册任务执行节点;任务管理节点为注册的任务执行节点建立对应的任务消息队列用于发送任务消息;任务管理节点获取要执行的任务信息,下发任务信息至任务消息队列;任务执行节点从其对应的任务消息队列获取任务信息并执行。本发明采用公有云和私有云均可访问的、安全的任务消息队列服务提供的任务消息队列作为任务执行节点和任务管理节点的通信方式,降低任务执行节点接入任务调度系统的成本以及增加混合云任务调度系统的自动扩缩容功能。
Description
技术领域
本发明涉及分布式计算机领域,尤其涉及到混合云环境下的任务调度方法及调度系统。
背景技术
在混合云的环境下,任务管理节点与任务执行节点通信常规的解决方案有:采用zookeeper作为注册中心,维持任务管理节点与任务执行节点之间的心跳连接;通过建立tcp连接作为节点之间的通信通道,进行任务的下发;心跳信息和任务信息都通过tcp连接进行传输;管理节点暴露http任务接口,任务执行节点向管理节点发起http请求去请求任务
但是以上方法底层都采用tcp通信,如果多个任务执行节点分布在不同的网络中,那么如何解决跨网络的tcp通信便成了问题。要解决这个问题,就要搭建一个VPN网络。但是当网络非常多时,维护VPN网络的成本将急速上升。
发明内容
本发明针对现有技术中的缺点,提供了一种采用公有云和私有云均可访问的、安全的任务消息队列服务提供的任务消息队列作为任务执行节点和任务管理节点的通信方式。
为了解决上述技术问题,本发明通过下述技术方案得以解决:
一种任务调度方法,包括以下步骤:
启动任务执行节点,获取动态秘钥建立连接;注册任务执行节点;
任务管理节点为注册的任务执行节点建立对应的任务消息队列用于发送任务消息;
任务管理节点获取要执行的任务信息,下发任务信息至任务消息队列;
任务执行节点从其对应的任务消息队列获取任务信息并执行。
还包括:
设置心跳消息队列,心跳消息队列与任务管理节点实现通信;
任务执行节点与心跳消息队列建立连接,连接成功后发送节点注册消息给心跳消息队列;
心跳消息队列发送注册信息给任务管理节点;
任务管理节点收到任务执行节点注册消息后,对任务执行节点的信息进行校验,校验成功,则注册任务执行节点成功。
其中,公有云和私有云均可访问任务消息队列服务提供的所述任务消息队列。
其中,任务执行节点执行任务过程中通过心跳消息队列发送实时上报任务执行情况和任务执行节点状态;
当任务执行节点完成任务后,通过心跳消息队列发送任务完成消息,任务管理节点接收到任务完成消息后标注该任务已经完成。
其中,任务管理节点从数据库中获取需要执行的任务信息;检查任务执行节点的资源情况,确定执行该任务的任务执行节点:
若任务执行节点资源充足,任务正常下发;
若任务执行节点资源不够,任务管理节点发起扩容请求。
其中,任务管理节点获取需要执行的任务信息为定时任务时,先加载任务信息到内存,再进行任务分配。
其中,任务管理节点通过心跳消息队列发送的数据判断任务执行节点是否处于正常状态,如果不正常,任务管理节点重新分配任务到其他的任务执行节点上。
本发明还提供一种任务调度系统,包括公有云网络下的任务管理节点、任务执行节点、每个任务执行节点对应的任务消息队列、心跳消息队列,以及私有云网络下的任务执行节点。
本发明还提供一种计算机设备,包括:存储器和处理器,其特征在于,所述处理器用于执行计算机程序实现上述任务调度方法,所述存储器用于存储可供所述处理器执行的所述计算机程序。
本发明还提供一种计算机存储介质,所述存储介质中存储有至少一段计算机程序,所述计算机程序被处理器执行时,使得处理器执行上述任务调度方法的步骤。
本发明的有益效果:
(1)本发明采用安全可信的任务消息队列作为任务执行节点和任务管理节点的通信载体,降低任务执行节点接入任务调度系统的成本;
(2)本发明采用动态分配接入密钥的方式,避免任务管理节点直接暴露在公网从而被恶意网络攻击;
(3)本发明采用任务管理节点自动分配任务消息队列的方式,实现任务执行节点的自动扩缩容功能,无需人工干预。
附图说明
图1是本实施例任务调度系统示意图;
图2是本实施例任务调度方法的流程图。
具体实施方式
下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
如图1,一种任务调度系统,包括公有云网络下的任务管理节点、任务执行节点、每个任务执行节点对应的任务消息队列、心跳消息队列,以及私有云网络下的任务执行节点。
任务管理节点是整个系统的总控制节点,用于接收心跳消息队列、任务消息队列或任务执行节点发送的信息,分析信息,发送任务以及仅接受或发送其他指令或信息。
任务执行节点用于执行任务管理节点发送的任务消息,并发送信息给任务管理节点。
所述任务消息队列是公有云和私有云均可访问任务消息队列服务提供的任务消息队列。任务消息队列与任务执行节点一一对应。上述的任务执行节点发送的和获取的消息都通过任务消息队列与任务管理节点通信。
心跳消息队列,接收任务执行节点发送过来的任务执行节点的状态和任务的执行状态,并发送给任务管理节点。心跳消息队列发送和接收的消息为心跳消息。
其中私有云和公有云网络下的任务执行节点都可以有多个,并可以根据需要扩容,再接入新的任务执行节点;任务消息队列与任务执行节点的数量相同。整个调度系统运行流程如图2:
S01在混合云环境下启动任务执行节点,获取动态秘钥建立连接;
S02心跳消息队列与任务管理节点实现通信;
S03任务执行节点与心跳消息队列建立连接,连接成功后发送节点注册消息给心跳消息队列;
S04心跳消息队列发送注册信息给任务管理节点;
S05任务管理节点收到任务执行节点注册消息后,对任务执行节点的信息进行校验:
信息校验通过,则注册成功;
信息校验不通过,则注册失败。
S06任务执行节点注册成功后,任务管理节点为注册的任务执行节点建立对应的任务消息队列用于发送任务消息;
S07任务管理节点获取要执行的任务信息,下发任务信息至任务消息队列;
S08任务执行节点从其对应的任务消息队列获取任务信息并执行。
S09当任务执行节点完成任务后,通过心跳消息队列发送任务完成消息,任务管理节点接收到任务完成消息后标注该任务已经完成。
其中任务执行节点执行任务过程中通过心跳消息队列发送实时上报任务执行情况和任务执行节点状态。
步骤S07中还包括:管理节点从数据库中获取需要执行的任务信息,并检查任务执行节点的资源情况,确定执行该任务的任务执行节点,
若任务执行节点资源充足,任务正常下发;
若任务执行节点资源不够,管理节点发起扩容请求,通过步骤s01增加新的任务执行节点。
其中,任务管理节点获取需要执行的任务信息为定时任务时,先加载任务信息到内存,再进行任务分配。
其中,任务管理节点通过心跳消息队列发送的数据判断任务执行节点是否处于正常状态,如果不正常,任务管理节点重新分配任务到其他的任务执行节点上。
本实施例的任务执行节点可以认为是任意控制系统,调度系统需要能把任务调度到云上的服务器,也要支持把任务调度到公司自有机房、甚至是任意一台能连上网的电脑。只要任意控制系统(计算机)能够实现连网,即可注册成为任务执行节点。
由此本发明还提供一种计算机设备,可以是上述任意控制系统的载体,包括:存储器和处理器,处理器包括一个或一个以上处理核心,存储器用于存储程序指令,处理器执行存储器中的程序指令时实现上述的任务调度方法方法。
其中,存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随时存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
此外,本发明还提供一种计算机存储介质,存储介质中存储有至少一段程序,至少一段程序由上述的处理器执行以实现如上述任务调度方法的步骤。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储与一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
Claims (9)
1.一种任务调度方法,其特征在于, 包括以下步骤:
启动任务执行节点,获取动态秘钥建立连接;注册任务执行节点;
任务管理节点为注册的任务执行节点建立对应的任务消息队列用于发送任务消息;
任务管理节点获取要执行的任务信息,下发任务信息至任务消息队列;
任务执行节点从其对应的任务消息队列获取任务信息并执行;
设置心跳消息队列,心跳消息队列与任务管理节点实现通信;
任务执行节点与心跳消息队列建立连接,连接成功后发送节点注册消息给心跳消息队列;
心跳消息队列发送注册信息给任务管理节点;
任务管理节点收到任务执行节点注册消息后,对任务执行节点的信息进行校验,校验成功,则注册任务执行节点成功。
2.根据权利要求1所述的任务调度方法,其特征在于,公有云和私有云均可访问任务消息队列服务提供的所述任务消息队列。
3.根据权利要求1所述的任务调度方法,其特征在于,任务执行节点执行任务过程中通过心跳消息队列发送实时上报任务执行情况和任务执行节点状态;
当任务执行节点完成任务后,通过心跳消息队列发送任务完成消息,任务管理节点接收到任务完成消息后标注该任务已经完成。
4.根据权利要求1所述的任务调度方法,其特征在于,
任务管理节点从数据库中获取需要执行的任务信息;检查任务执行节点的资源情况,确定执行该任务的任务执行节点,若任务执行节点资源充足,任务正常下发;若任务执行节点资源不够,任务管理节点发起扩容请求。
5.根据权利要求4所述的任务调度方法,其特征在于,任务管理节点获取需要执行的任务信息为定时任务时,先加载任务信息到内存,再进行任务分配。
6.根据权利要求1所述的任务调度方法,其特征在于,任务管理节点通过心跳消息队列发送的数据判断任务执行节点是否处于正常状态,如果不正常,任务管理节点重新分配任务到其他的任务执行节点上。
7.一种任务调度系统,其特征在于,用于实现权利要求1-6任意一项所述的任务调度方法,包括公有云网络下的任务管理节点、任务执行节点、每个任务执行节点对应的任务消息队列、心跳消息队列,以及私有云网络下的任务执行节点。
8.一种计算机设备,包括:存储器和处理器,其特征在于,所述处理器用于执行计算机程序实现如权利要求1至6中任一项所述的方法,所述存储器用于存储可供所述处理器执行的所述计算机程序。
9.一种计算机存储介质,其特征在于,所述存储介质中存储有至少一段计算机程序,所述计算机程序被处理器执行时,使得处理器执行权利要求1至6中任一项所述任务调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010053178.8A CN111314241B (zh) | 2020-01-17 | 2020-01-17 | 一种任务调度方法及调度系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010053178.8A CN111314241B (zh) | 2020-01-17 | 2020-01-17 | 一种任务调度方法及调度系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111314241A CN111314241A (zh) | 2020-06-19 |
CN111314241B true CN111314241B (zh) | 2024-03-29 |
Family
ID=71161435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010053178.8A Active CN111314241B (zh) | 2020-01-17 | 2020-01-17 | 一种任务调度方法及调度系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111314241B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112181610A (zh) * | 2020-08-28 | 2021-01-05 | 深圳市优必选科技股份有限公司 | 一种任务处理系统 |
CN117290076B (zh) * | 2023-11-24 | 2024-04-09 | 苏州盈数智能科技有限公司 | 一种易扩缩容的多并发任务派发的设备管理方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134591A (en) * | 1997-06-18 | 2000-10-17 | Client/Server Technologies, Inc. | Network security and integration method and system |
CN101562543A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种缓存数据的处理方法、处理系统和装置 |
CN104125271A (zh) * | 2014-07-07 | 2014-10-29 | 四川中电启明星信息技术有限公司 | 一种应用于可视化数据推送平台的分布式架构方法 |
CN106980543A (zh) * | 2017-04-05 | 2017-07-25 | 福建智恒软件科技有限公司 | 基于事件触发的分布式任务调度方法及装置 |
CN108270634A (zh) * | 2016-12-30 | 2018-07-10 | 中移(苏州)软件技术有限公司 | 一种心跳探测的方法及系统 |
CN108810125A (zh) * | 2018-06-01 | 2018-11-13 | 云家园网络技术有限公司 | 物理节点的服务发现方法及系统 |
CN109150558A (zh) * | 2017-06-15 | 2019-01-04 | 北京京东尚科信息技术有限公司 | 管理消息队列节点的方法、装置和系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI20030796A0 (fi) * | 2003-05-27 | 2003-05-27 | Nokia Corp | Tiedonkeruu tietokoneklusterissa |
US7886295B2 (en) * | 2005-02-17 | 2011-02-08 | International Business Machines Corporation | Connection manager, method, system and program product for centrally managing computer applications |
US20070005694A1 (en) * | 2005-06-30 | 2007-01-04 | Pando Networks, Inc. | System and method for distributed multi-media production, sharing and low-cost mass publication |
KR100826522B1 (ko) * | 2006-11-15 | 2008-04-30 | 삼성전자주식회사 | 이동통신 시스템에서 동적 암호화 장치 및 방법 |
JP2012083845A (ja) * | 2010-10-07 | 2012-04-26 | Canon Inc | クラウドコンピューティングシステム、情報処理方法及びプログラム |
-
2020
- 2020-01-17 CN CN202010053178.8A patent/CN111314241B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134591A (en) * | 1997-06-18 | 2000-10-17 | Client/Server Technologies, Inc. | Network security and integration method and system |
CN101562543A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种缓存数据的处理方法、处理系统和装置 |
CN104125271A (zh) * | 2014-07-07 | 2014-10-29 | 四川中电启明星信息技术有限公司 | 一种应用于可视化数据推送平台的分布式架构方法 |
CN108270634A (zh) * | 2016-12-30 | 2018-07-10 | 中移(苏州)软件技术有限公司 | 一种心跳探测的方法及系统 |
CN106980543A (zh) * | 2017-04-05 | 2017-07-25 | 福建智恒软件科技有限公司 | 基于事件触发的分布式任务调度方法及装置 |
CN109150558A (zh) * | 2017-06-15 | 2019-01-04 | 北京京东尚科信息技术有限公司 | 管理消息队列节点的方法、装置和系统 |
CN108810125A (zh) * | 2018-06-01 | 2018-11-13 | 云家园网络技术有限公司 | 物理节点的服务发现方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111314241A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019157955A1 (zh) | 设备接入方法、相关平台及计算机存储介质 | |
EP3800926B1 (en) | Alarm method and device | |
CN108429631B (zh) | 一种网络业务实例化的方法及装置 | |
JPWO2017170470A1 (ja) | ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム | |
WO2016197346A1 (zh) | 一种虚拟网络功能的生命周期管理方法,及装置 | |
CN111314241B (zh) | 一种任务调度方法及调度系统 | |
CN110532025B (zh) | 基于微服务架构的数据处理方法、装置、设备及存储介质 | |
CN111858045A (zh) | 一种多任务gpu资源调度方法、装置、设备及可读介质 | |
CN106533961B (zh) | 一种流量控制方法及装置 | |
CN116566984B (zh) | 一种k8s容器集群的路由信息创建方法、装置及电子设备 | |
CN112291298A (zh) | 异构系统的数据传输方法、装置、计算机设备和存储介质 | |
CN112559461A (zh) | 文件传输方法及装置、存储介质及电子设备 | |
US20220103500A1 (en) | Method and device for managing group member, and method for processing group message | |
CN106790354B (zh) | 一种防数据拥堵的通信方法及其装置 | |
US10637748B2 (en) | Method and apparatus for establishing interface between VNFMS, and system | |
US20220206836A1 (en) | Method and Apparatus for Processing Virtual Machine Migration, Method and Apparatus for Generating Virtual Machine Migration Strategy, Device and Storage Medium | |
CN113672336A (zh) | 一种k8s容器集群部署方法、装置、设备及可读存储介质 | |
CN110677838A (zh) | 一种业务分配方法及装置 | |
US10846156B2 (en) | Methods, devices and computer program products for managing software function | |
US11231969B2 (en) | Method for auditing a virtualised resource deployed in a cloud computing network | |
CN112738181B (zh) | 集群外部ip接入的方法、装置及服务器 | |
CN115883283A (zh) | 一种容器化vnf的部署方法及装置 | |
EP3659033B1 (en) | Connector leasing for long-running software operations | |
CN112616143A (zh) | 一种分配通信号码的方法、装置、电子设备及存储介质 | |
CN109257201B (zh) | 一种License的发送方法和装置 |
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 |