CN104503845A - 一种任务分发方法和系统 - Google Patents
一种任务分发方法和系统 Download PDFInfo
- Publication number
- CN104503845A CN104503845A CN201510018653.7A CN201510018653A CN104503845A CN 104503845 A CN104503845 A CN 104503845A CN 201510018653 A CN201510018653 A CN 201510018653A CN 104503845 A CN104503845 A CN 104503845A
- Authority
- CN
- China
- Prior art keywords
- task
- node
- information
- assembly
- distributed
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000004891 communication Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 11
- 230000003068 static effect Effects 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 28
- 238000007726 management method Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 10
- 238000013499 data model Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000013523 data management Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005315 distribution function Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
Abstract
本申请公开了一种任务分发方法和系统,该任务分发方法和系统基于分布式协调服务实现,首先对节点进行注册;当新任务到达时,将新任务加入任务队列,并判断所述新任务请求的目的计算节点是否为已注册节点,如果是,将该新任务的信息添加入分布式协调服务中的任务存储模块,通知对应的节点执行所述新任务,并从任务队列中删除所述新任务,否则,将所述新任务置于任务队列尾部,并在预设时间内以预设的时间间隔执行所述判断的操作,直至找到相应的节点,如果超过所述预设时间没有找到相应的节点,则将所述新任务从所述任务队列中删除。应用本申请公开的技术方案,能够充分保证任务分发的一致性和可靠性能,并提供高可用的任务分发服务。
Description
技术领域
本申请属于计算机领域的任务分发技术领域,特别涉及一种基于分布式协调服务的任务分发方法和系统。
背景技术
在信息产业高速发展的今天,计算需求日益丰富,计算机服务系统规模不断扩大,系统结构由过去单一的集中式发展到现在相对流行的分布式,这一系列变化使得计算环境变得更加复杂且未知,也对协同计算过程中常用的任务分发技术提出了更高的要求。
计算过程中,通常会在不同时间,甚至不同地点,产生不同数量、不同类型的任务请求,需要利用任务分发技术,将每个请求有秩序地分发给相应的目的计算节点,减少任务冲突或丢失,以保证任务的有效执行。现有常见的任务分发技术主要有两种,一种为集中式任务分发,另一种为多层次任务分发。其中:
集中式任务分发技术采用独立的任务分发控制器,由单个控制节点收集所有的任务请求,并将请求按照时间、类型等相关属性信息有序分发到相关目的计算节点上,具有安全、统一、灵活的特点。然而,这种分发技术在分布式计算环境中会存在明显的性能瓶颈,对于短时间内较大数量的任务请求,容易出现过度负载,引起单点失效等故障,降低其所在系统的可靠性。与此同时,分发控制信息集中在一台控制器上处理,不具备良好的可扩展性。
多层次任务分发技术采用多个任务分发控制器协同完成任务分发工作,各个控制节点之间互相独立,在分布性较强或单位时间内计算任务较多的环境下,可对控制器层级化,控制器之间通过数据同步实现任务分发信息一致性,这就较容易由于网络问题或者部分节点故障而导致任务分发错误,如任务重复分发、任务信息丢失等,使得其所在系统无法满足计算需求,顺利完成计算任务,从而降低系统的可用性。
发明内容
本申请提供了一种基于分布式协调服务的任务分发方法和系统,以满足不断复杂的计算环境对任务分发方法和系统提出的新要求。
本申请提供了一种任务分发方法,包括:
对节点进行注册;
当新任务到达时,将新任务加入任务队列,并判断所述新任务请求的目的计算节点是否为已注册节点,如果是,将所述新任务的信息添加入分布式协调服务中的任务存储模块,通知对应的节点执行所述新任务,并从任务队列中删除所述新任务,否则,将所述新任务置于任务队列尾部,并在预设时间内以预设的时间间隔执行所述判断的操作,直至找到相应的节点,如果超过所述预设时间没有找到相应的节点,则将所述新任务从所述任务队列中删除。
较佳地,所述对节点进行注册包括:
节点开始活动时,查找已注册节点中是否存在所述节点;
如果存在,则查询是否存在对应于所述节点的待执行任务,如果有,执行所述待执行任务;
如果不存在,则注册所述节点,并将节点状态置为空闲。
较佳地,注册所述节点包括:创建对应于所述节点的任务存储模块。
较佳地,所述通知对应的节点执行所述新任务包括:
节点接收到新任务到达通知;
所述节点获取新任务的任务名及任务参数;
所述节点利用所述任务名查询任务相关描述信息,并根据获取到任务参数和任务相关描述信息执行相应的任务,并将所述任务的状态置为执行中;
任务执行完成后,将所述任务的状态置为已完成,并反馈执行结果。
较佳地,该方法还包括:
创建存储目录,所述存储目录包括两个子目录:任务类型存储目录和节点信息存储目录,其中:
任务类型存储目录用于存储收到的任务的信息,包括但不限于:任务描述信息、任务相关命令;
节点信息存储目录用于存储所有注册节点的信息,包括但不限于:节点资源信息、收到的任务信息、节点状态。
本申请提供的一种任务分发系统,包括:分布式协调组件和任务分发组件,其中:
所述分布式协调组件基于分布式协调服务,用于对节点进行注册和管理;
所述任务分发组件用于进行任务分发,当新任务到达时,将新任务加入任务队列,并向分布式协调组件查询所述新任务请求的目的计算节点是否为已注册节点,如果是,通知对应的节点执行所述新任务,并从任务队列中删除所述新任务,否则,将所述新任务置于任务队列尾部,并在预设时间内以预设的时间间隔执行所述判断的操作,直至找到相应的节点,如果超过所述预设时间没有找到相应的节点,则将所述新任务从所述任务队列中删除。
较佳地,所述分布式协调组件包括:节点信息管理组件、事件通知组件和任务信息存储组件,其中:
节点信息管理组件以类Unix文件系统的树形结构,存储各注册节点的相关信息;
事件通知组件与节点信息管理组件和任务信息存储组件通讯,用于通知任务分发组件相关的事件;
任务信息存储组件以队列的方式存储任务信息,并通过事件通知组件传递给任务分发组件。
较佳地,所述任务分发组件包括:节点监控组件、任务管理组件和节点管理组件,其中:
节点监控组件用于监控节点的信息并将其更新到分布式协调组件中,监控的信息包括节点的静态信息、动态信息、节点状态等;
任务管理组件通过与节点管理组件通讯来定位对应的节点,给对应的节点分配任务,并反馈任务进行情况到分布式协调组件;
节点管理组件负责与分布式协调组件的节点信息管理组件通讯,提供具体的节点操作功能,包括但不限于:注册节点、查询节点信息、注销节点、修改节点。由上述技术方案可见,本申请提供的基于分布式协调服务的任务分发方法和系统,主要解决了传统方法和系统无法适应分布式计算环境的问题,对于物理分布性强、单位时间内待分发任务数量大的系统,本申请提供的方法和系统能够充分保证任务分发的一致性和可靠性能,并提供高可用的任务分发服务。
在本申请提供的任务分发方法和系统中,分布式协调组件主要提供任务类型查询、任务信息存储、计算节点信息存储和事件通知功能,这些功能都依赖于分布式协调服务,利用它针对大型分布式系统设计的可靠数据管理服务的特点,可以有效保障任务请求数据的安全及一致性。由于分布式协调服务是一种具有高可扩展性的服务,可充分适应分布式计算环境及高吞吐量的任务信息读写,为任务分发服务的高可用性提供了保障。
在任务分发方面,通过在每个计算节点上部署任务分发组件,与分布式协调组件异步通讯来获取和同步计算节点的状态以及任务的状态。由分布式协调组件来确保任务分发的可靠性,可用性以及一致性。
为了提高提高分布式协调服务,本申请依赖于分布式协调服务中使用的类似于Unix文件系统的数据模型,并自主设计了与任务分发相关的数据存储框架。本申请中数据模型的不同点在于,没有文件系统中对文件和目录的明显区分,它统一使用节点(node)的概念,节点可以作为数据存储文件以及其他节点的容器。这样的设计不单是为了存储而设计,还拥有高吞吐、低延迟的特性。
附图说明
图1为本申请一较佳任务分发系统的模块示意图;
图2为本申请任务分发系统的信息存储结构模型;
图3为本申请任务分发系统的部署方式示意图;
图4为本申请任务到达处理流程示意图;
图5为本申请节点注册流程示意图;
图6为本申请任务执行流程示意图;
图7为本申请一较佳实施例中任务分发系统的数据模型示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。
分布式协调服务是一种针对大型分布式系统提供的可靠协调服务,主要用于解决分布式应用中的可靠性和一致性问题,它的主要功能包括数据维护、分布式同步和命名服务等。
下面以Zookeeper为例,来说明分布式协调服务的特征和基本原理。Zookeeper是分布式协调服务的一种开源实现,其思想是基于google的论文:"The Chubby lockservice for loosely-coupled distributed systems."。
其基本原理为:服务器和客户端,以心跳检测机制(即在一定时间内ping客户端)来保持连接。服务器之间通过选举来确定一个唯一的leader,并由leader来进行不同服务器间数据的同步。Leader机制保证在超过半数服务器正常运行的情况下,系统能够稳定提供一致性服务。并且,通过一个类Unix文件系统的储存方式来对数据进行存储。
其特点是:通过建立一个分布式集群系统,来为外界提供一个稳定的一致的数据服务,包括数据维护、分布式同步和命名服务等;并且,保证数据在发生变化时对关注该数据的客户端进行通知,保证不同客户端接收的通知顺序一致。
分布式协调服务中分布式的多节点协同工作方式能够解决集中式任务分发系统的过度负载,单点失效等问题;而节点间的同步、冲突解决机制又能够弥补多层次任务分发技术的任务重复分发、分发错误、任务丢失的不足。本申请以这种可靠的分布式协调服务作为基础保障,提出一种任务分发方法和系统,该方法和系统主要通过提供任务类型查询、任务请求到达通知及任务信息获取等功能来实现任务分发。
图1为本申请一较佳任务分发系统的模块示意图。参见图1,本申请任务分发系统主要包括两部分:分布式协调组件和任务分发组件,其中:
分布式协调组件基于分布式协调服务设计了组件中的数据存储框架。该组件主要包括3个子模块,分别是:节点信息管理组件、事件通知组件和任务信息存储组件,其中:
1)节点信息管理组件:以类Unix文件系统的树形结构,存储各计算节点的相关信息;
2)事件通知组件:与节点信息管理组件和任务信息存储组件通讯,用于通知任务分发组件相关的事件,如新任务到达,节点信息变更等;
3)任务信息存储组件:以队列的方式存储任务信息,并通过事件通知组件传递给任务分发组件。
任务分发组件主要包括3个子模块,分别是:节点监控组件、任务管理组件和节点管理组件,其中:
1)节点监控组件:用于监控计算节点的信息并将其更新到分布式协调组件中,监控的信息包括节点的静态信息(如处理器型号、MAC地址等不变信息)、动态信息(如CPU利用率、内存利用率等动态数据)、节点活动状态(是否在线)等;
2)任务管理组件:通过与节点管理组件通讯来定位对应指定节点,给指定计算节点分配任务,并反馈任务进行情况到分布式协调组件;
3)节点管理组件:负责与分布式协调组件的节点信息管理组件通讯,提供具体的节点操作功能,包括:注册节点、查询节点信息、注销节点、修改节点等操作。
下面结合图2,描述本申请任务分发系统的信息存储结构模型。如图2所示:
整个存储目录分为两个子目录,分别是任务类型存储目录和节点信息存储目录,其中:
任务类型存储目录:用于存储收到的任务的信息,包括任务描述信息、任务相关命令(例如:待执行的命令)等;
节点信息存储目录:用于存储所有注册节点的信息,包括节点资源信息(包括:CPU利用率、内存利用率等)、收到的任务信息、节点状态等。其中,节点即被管理节点,代表执行任务的计算机、服务器或类似设备(包括虚拟机)等。
上述信息存储模型存在于分布式协调服务中。通过这样的存储结构,我们就可以利用分布式协调服务进行高可用的任务分发。这套存储结构存储在分布式协调组件中,在进行任务分发时,任务分发组件与分布式协调组件通讯获取所需信息,从而完成任务分发功能,具体流程将在后续进行描述。
下面结合图3,描述本申请任务分发系统的部署方式。参见图3:
分布式协调组件由多个分布式协调服务节点协同工作实现。它可以接收任务,并创建任务队列,通过数据存储功能记录下队列中每个任务的相关信息,如任务执行参数、任务请求的目的计算节点等。同时,分布式协调组件还将存储所有可能的任务类型,为节点提供任务类型查询功能,节点可以根据任务名在服务中找到该任务对应的具体描述,甚至相关任务指令。为了让节点可以及时接收并执行相关任务,每个节点都在分布式协调组件的节点信息管理组件中进行注册,并拥有属于自己的任务存储模块(任务存储模块由任务信息存储组件管理),当某节点的任务存储模块中被写入新任务时,系统将通知相应的节点接收并执行该新任务。
在节点池中,每个节点都安装有任务分发组件(安装在节点中的任务分发组件可以理解为本申请任务分发系统的客户端),通过任务分发组件与分布式协调组件的协同工作,完成任务分发功能。
本申请如图3所示的任务分发系统主要涉及任务到达、节点注册及任务执行三个主要的应用场景,下面结合附图分别予以详细说明。
图4为本申请任务到达处理流程示意图,主要包括以下处理:
a.新任务到达;
b.新任务加入任务队列;
c.查询任务请求中的目的计算节点信息;
d.在分布式协调组件中根据目的计算节点信息查找相应的节点是否存在;
e.若存在,则对该节点在分布式协调组件中的任务存储模块进行修改,将该任务相关的信息添加到该节点对应的任务存储模块中,并通知该节点有新任务到达,将该任务的状态更改为等待执行,并从任务队列中删除该任务;
f.若不存在,则将该任务置于队列尾部,在规定时间内以一定的时间间隔对分布式协调组件的节点信息管理组件发起轮询,若找到目的计算节点,则按e步骤执行;若在规定时间内未找到目的计算节点,返回任务执行错误信息,并从任务队列中删除该任务。
图5为本申请节点注册流程示意图,主要包括以下处理:
a.节点开始活动(即已做好执行任务到准备)时,节点运行任务分发组件,进行节点初始化;
b.在分布式协调组件中查找节点信息;
c.若存在相应的节点,则节点开始接收任务,查询是否存在待执行任务(也可称为未完成任务),如果有未完成任务,则执行未完成任务;
d.若不存在相应的节点,则在分布式协调组件中创建对应于该节点的唯一的任务存储模块,将节点状态置为空闲,等待新任务到达。
图6为本申请任务执行流程示意图,主要包括以下处理:
a.节点接收到新任务到达通知;
b.节点中的任务分发组件与分布式协调组件进行通信,获取新任务的任务名及任务参数;
c.利用任务名在分布式协调组件中查询任务相关描述信息(如执行指令);
d.节点根据获取的任务参数、任务指令等信息执行计算任务,将其在分布式协调组件中存储的任务状态更改为执行中;
e.任务执行完成后,将任务状态修改为已完成,并将执行结果反馈到分布式协调组件中。
下面通过一个较佳实施例对本申请技术方案进行进一步详细说明。
本实施例是将本发明中的任务分发方法和系统应用到分布式集群环境中,实现一个集群内部地任务分发系统。该任务分发系统主要接收来自集群管理节点发出的任务请求,将任务分发给指定的目的计算节点,并对任务执行状态进行记录。涉及的具体技术包括分布式协调服务框架zookeeper及python编程语言。
本实施例中,利用zookeeper提供分布式协调服务,实现数据管理服务。通过对zookeeper类似文件系统的数据模型——znode树进行设计,使每个计算节点在zookeeper都对应有唯一的任务存储模块,同时利用zookeeper中对znode的状态变化监听机制,实现任务到达通知等功能。系统的数据模型详细设计如图7所示:
在ZooKeeper数据模型中,默认根znode下主要有两个子znode树:
一个为用于存储所有可能类型任务的znode树。该树的根节点是名为Tasks的znode,其子znode由具体的任务名称命名,如图7所示的task-1、task-2、……task-n。每个任务znode下都有两个固定的子znode,分别被命名为description,用于存储任务描述信息;以及commands,用于存储任务相关执行指令。该znode树的主要功能是枚举系统所有的任务类型,为节点提供基本的任务明细,使节点了解指定任务的具体任务内容、任务要求和其涉及的执行指令,方便节点执行具体任务。
另一个是用于存储各节点相关任务请求的znode树。该树的根节点是名为Nodes的znode,其子znode由集群中各节点名称命名,如图7所示的member-01、member-02、……member-n。每个节点znode下也拥有两个固定的子znode,分别为request,用于存储该节点接收到的所有任务请求;以及machine,用于标记节点的活动状态。需要注意的是,machine是一个临时znode,只有当节点开始运行任务分发系统客户端时,才会自动创建该znode,以表示节点处于活动状态,可接收并执行任务。request及其子znode树则对应节点的任务存储模块,它的每个子znode都对应一个节点收到的任务请求,znode由任务名称命名,同时,znode的存储值为该任务请求的相关信息,如任务请求时间、任务请求参数、任务执行状态、任务执行结果等。
对于任务分发系统主要涉及的三种场景,结合本实施例设计的上述ZooKeeper数据模型,具体方法实现如下:
1.任务到达
a.当新任务到达时,根据任务的目的节点名,在ZooKeeper的Nodes目录下查找是否存在以该节点名命名的子znode;
b.若存在,则在该znode目录中名为request的子znode下创建一个以任务名命名的znode,存储值为该任务请求的相关信息,其中状态信息为等待执行;
c.若不存在,则等待一个预设的时间间隔,之后再次发起相同的任务请求,轮询ZooKeeper中是否存在该目的节点,若存在,则按照b步骤执行。假设每个任务轮询发起请求的次数上限为10次,10次之后若仍无法找到目的节点接收,则丢弃此任务,并返回错误提示。
2.节点注册
a.节点运行任务分发系统客户端后,客户端主动与ZooKeeper服务器端建立通信连接;
b.通信连接成功后,在ZooKeeper的Nodes目录下查找是否存在以该节点名命名的子znode;
c.若存在,则在节点对应znode目录下建立machine临时znode,并对request目录下的各任务状态进行读取。对于标记为等待执行的任务,立即开始执行;同时对request目录进行监听,若出现新的任务,节点将通过客户端收到通知;
d.若不存在,则在Nodes目录下建立节点对应的znode子树,并对树中的request目录进行监听,等待新任务到达。
3.任务执行
a.当新任务到达时,节点对应的znode目录下的request目录下将创建一个对应的任务znode,ZooKeeper服务将监测到这一变化,并通知节点上运行的任务分发系统客户端,节点对应的任务存储模块有变化;
b.节点收到通知后,通过任务分发系统客户端与ZooKeeper服务器建立通信,通过遍历request目录下的子znode,找到新的任务znode,并通过读取该znode的存储值获取任务参数;
c.获取到充足的任务信息后,节点在本地执行具体的任务,并将对应znode存储值的任务状态字段更新为执行中;
d.当任务执行完成后,节点再次通过任务分发系统客户端将任务执行结果写入到对应znode存储值的任务结果字段中。
本实施例中的任务分发方法和系统通过利用ZooKeeper在数据管理方面的高容错性和高一致性,可靠的实现了任务相关数据的存储和读写,并通过编程实现相关业务逻辑实现任务分发方法。同时,该系统还利用ZooKeeper的高可扩展性,充分适应了弹性规模的环境,保证了系统的服务质量。
由上述可见,本申请以分布式协调服务为基础建立了一种任务分发方法和系统,充分利用了分布式协调服务在数据管理方面的优势来维护任务分发状态信息的一致性,并利用分布式协调服务的可扩展性满足了分布式计算环境对任务分发系统提出的高吞吐量需求,能够保证服务的高可用性。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (8)
1.一种任务分发方法,其特征在于,包括:
对节点进行注册;
当新任务到达时,将新任务加入任务队列,并判断所述新任务请求的目的计算节点是否为已注册节点,如果是,将所述新任务的信息添加入分布式协调服务中的任务存储模块,通知对应的节点执行所述新任务,并从任务队列中删除所述新任务,否则,将所述新任务置于任务队列尾部,并在预设时间内以预设的时间间隔执行所述判断的操作,直至找到相应的节点,如果超过所述预设时间没有找到相应的节点,则将所述新任务从所述任务队列中删除。
2.根据权利要求1所述的方法,其特征在于,所述对节点进行注册包括:
节点开始活动时,查找已注册节点中是否存在所述节点;
如果存在,则查询是否存在对应于所述节点的待执行任务,如果有,执行所述待执行任务;
如果不存在,则注册所述节点,并将节点状态置为空闲。
3.根据权利要求2所述的方法,其特征在于:
注册所述节点包括:创建对应于所述节点的任务存储模块。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述通知对应的节点执行所述新任务包括:
节点接收到新任务到达通知;
所述节点获取新任务的任务名及任务参数;
所述节点利用所述任务名查询任务相关描述信息,并根据获取到任务参数和任务相关描述信息执行相应的任务,并将所述任务的状态置为执行中;
任务执行完成后,将所述任务的状态置为已完成,并反馈执行结果。
5.根据权利要求1至3任一项所述的方法,其特征在于,该方法还包括:
创建存储目录,所述存储目录包括两个子目录:任务类型存储目录和节点信息存储目录,其中:
任务类型存储目录用于存储收到的任务的信息,包括但不限于:任务描述信息、任务相关命令;
节点信息存储目录用于存储所有注册节点的信息,包括但不限于:节点资源信息、收到的任务信息、节点状态。
6.一种任务分发系统,其特征在于,包括:分布式协调组件和任务分发组件,其中:
所述分布式协调组件基于分布式协调服务,用于对节点进行注册和管理;
所述任务分发组件用于进行任务分发,当新任务到达时,将新任务加入任务队列,并向分布式协调组件查询所述新任务请求的目的计算节点是否为已注册节点,如果是,通知对应的节点执行所述新任务,并从任务队列中删除所述新任务,否则,将所述新任务置于任务队列尾部,并在预设时间内以预设的时间间隔执行所述判断的操作,直至找到相应的节点,如果超过所述预设时间没有找到相应的节点,则将所述新任务从所述任务队列中删除。
7.根据权利要求6所述的系统,其特征在于,所述分布式协调组件包括:节点信息管理组件、事件通知组件和任务信息存储组件,其中:
节点信息管理组件以类Unix文件系统的树形结构,存储各注册节点的相关信息;
事件通知组件与节点信息管理组件和任务信息存储组件通讯,用于通知任务分发组件相关的事件;
任务信息存储组件以队列的方式存储任务信息,并通过事件通知组件传递给任务分发组件。
8.根据权利要求6所述的系统,其特征在于,所述任务分发组件包括:节点监控组件、任务管理组件和节点管理组件,其中:
节点监控组件用于监控节点的信息并将其更新到分布式协调组件中,监控的信息包括节点的静态信息、动态信息、节点状态等;
任务管理组件通过与节点管理组件通讯来定位对应的节点,给对应的节点分配任务,并反馈任务进行情况到分布式协调组件;
节点管理组件负责与分布式协调组件的节点信息管理组件通讯,提供具体的节点操作功能,包括但不限于:注册节点、查询节点信息、注销节点、修改节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510018653.7A CN104503845B (zh) | 2015-01-14 | 2015-01-14 | 一种任务分发方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510018653.7A CN104503845B (zh) | 2015-01-14 | 2015-01-14 | 一种任务分发方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104503845A true CN104503845A (zh) | 2015-04-08 |
CN104503845B CN104503845B (zh) | 2017-07-14 |
Family
ID=52945245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510018653.7A Expired - Fee Related CN104503845B (zh) | 2015-01-14 | 2015-01-14 | 一种任务分发方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104503845B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201671A (zh) * | 2015-04-29 | 2016-12-07 | 北大方正集团有限公司 | 一种群集部署环境中任务调度方法及装置 |
CN106302648A (zh) * | 2016-07-29 | 2017-01-04 | 北京小米移动软件有限公司 | 业务处理方法及装置 |
CN106850747A (zh) * | 2016-12-23 | 2017-06-13 | 上海网达软件股份有限公司 | 一种分布式实时转码系统的转码节点管理系统及方法 |
CN108062245A (zh) * | 2017-12-14 | 2018-05-22 | 上海钢联电子商务股份有限公司 | 一种应用定时任务统一管理系统及方法 |
CN108280150A (zh) * | 2018-01-05 | 2018-07-13 | 宝付网络科技(上海)有限公司 | 一种分布式异步业务分发方法及系统 |
CN108388988A (zh) * | 2018-02-26 | 2018-08-10 | 深圳智乾区块链科技有限公司 | 基于区块链的协同办公方法、系统及计算机可读存储介质 |
CN108600008A (zh) * | 2018-04-24 | 2018-09-28 | 成都致云科技有限公司 | 服务器管理方法、服务器管理装置及分布式系统 |
CN109005224A (zh) * | 2018-07-26 | 2018-12-14 | 中国建设银行股份有限公司 | 数据分发方法及装置 |
CN109684063A (zh) * | 2018-12-26 | 2019-04-26 | 亚信科技(中国)有限公司 | 一种任务调度方法和装置 |
CN109828979A (zh) * | 2019-01-31 | 2019-05-31 | 浙江小泰科技有限公司 | 一种数据一致性检测方法及系统 |
CN110069329A (zh) * | 2019-04-15 | 2019-07-30 | 北京达佳互联信息技术有限公司 | 一种任务处理方法、装置、服务器及存储介质 |
WO2019148728A1 (zh) * | 2018-02-01 | 2019-08-08 | 平安科技(深圳)有限公司 | 电子装置、分布式系统执行任务分配方法及存储介质 |
CN110516000A (zh) * | 2019-09-02 | 2019-11-29 | 中山大学 | 一种支持复杂工作流结构的工作流管理系统 |
CN110928662A (zh) * | 2019-11-28 | 2020-03-27 | 国网信息通信产业集团有限公司 | 一种面向微服务架构的分布式定时任务调度器 |
CN111026809A (zh) * | 2019-12-03 | 2020-04-17 | 浪潮软件股份有限公司 | 一种调度流程分布式执行系统 |
CN111026526A (zh) * | 2019-11-12 | 2020-04-17 | 珠海格力电器股份有限公司 | 程序的定时器配置方法、装置、存储介质及终端设备 |
CN112822250A (zh) * | 2020-12-31 | 2021-05-18 | 鲸灵科技股份有限公司 | 一种大数据平台去中心化的调度和执行方法、装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013386A (zh) * | 2007-02-06 | 2007-08-08 | 华中科技大学 | 基于反馈机制的网格任务调度方法 |
CN101126992A (zh) * | 2006-08-15 | 2008-02-20 | 国际商业机器公司 | 在网络中的多个节点中分配多个任务的方法和系统 |
CN101916209A (zh) * | 2010-08-06 | 2010-12-15 | 华东交通大学 | 一种多核处理器集群任务资源分配方法 |
CN102073546A (zh) * | 2010-12-13 | 2011-05-25 | 北京航空航天大学 | 一种云计算环境中分布式计算模式下的任务动态调度方法 |
CN102521044A (zh) * | 2011-12-30 | 2012-06-27 | 北京拓明科技有限公司 | 一种基于消息中间件的分布式任务调度方法及系统 |
CN103092698A (zh) * | 2012-12-24 | 2013-05-08 | 中国科学院深圳先进技术研究院 | 云计算应用自动部署系统及方法 |
US20130191843A1 (en) * | 2011-08-23 | 2013-07-25 | Infosys Limited | System and method for job scheduling optimization |
-
2015
- 2015-01-14 CN CN201510018653.7A patent/CN104503845B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101126992A (zh) * | 2006-08-15 | 2008-02-20 | 国际商业机器公司 | 在网络中的多个节点中分配多个任务的方法和系统 |
CN101013386A (zh) * | 2007-02-06 | 2007-08-08 | 华中科技大学 | 基于反馈机制的网格任务调度方法 |
CN101916209A (zh) * | 2010-08-06 | 2010-12-15 | 华东交通大学 | 一种多核处理器集群任务资源分配方法 |
CN102073546A (zh) * | 2010-12-13 | 2011-05-25 | 北京航空航天大学 | 一种云计算环境中分布式计算模式下的任务动态调度方法 |
US20130191843A1 (en) * | 2011-08-23 | 2013-07-25 | Infosys Limited | System and method for job scheduling optimization |
CN102521044A (zh) * | 2011-12-30 | 2012-06-27 | 北京拓明科技有限公司 | 一种基于消息中间件的分布式任务调度方法及系统 |
CN103092698A (zh) * | 2012-12-24 | 2013-05-08 | 中国科学院深圳先进技术研究院 | 云计算应用自动部署系统及方法 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201671A (zh) * | 2015-04-29 | 2016-12-07 | 北大方正集团有限公司 | 一种群集部署环境中任务调度方法及装置 |
CN106201671B (zh) * | 2015-04-29 | 2019-10-15 | 北大方正集团有限公司 | 一种群集部署环境中任务调度方法及装置 |
CN106302648A (zh) * | 2016-07-29 | 2017-01-04 | 北京小米移动软件有限公司 | 业务处理方法及装置 |
CN106302648B (zh) * | 2016-07-29 | 2019-05-07 | 北京小米移动软件有限公司 | 业务处理方法及装置 |
CN106850747A (zh) * | 2016-12-23 | 2017-06-13 | 上海网达软件股份有限公司 | 一种分布式实时转码系统的转码节点管理系统及方法 |
CN106850747B (zh) * | 2016-12-23 | 2020-03-20 | 上海网达软件股份有限公司 | 一种分布式实时转码系统的转码节点管理系统及方法 |
CN108062245A (zh) * | 2017-12-14 | 2018-05-22 | 上海钢联电子商务股份有限公司 | 一种应用定时任务统一管理系统及方法 |
CN108280150A (zh) * | 2018-01-05 | 2018-07-13 | 宝付网络科技(上海)有限公司 | 一种分布式异步业务分发方法及系统 |
CN108280150B (zh) * | 2018-01-05 | 2023-03-28 | 宝付网络科技(上海)有限公司 | 一种分布式异步业务分发方法及系统 |
WO2019148728A1 (zh) * | 2018-02-01 | 2019-08-08 | 平安科技(深圳)有限公司 | 电子装置、分布式系统执行任务分配方法及存储介质 |
CN108388988A (zh) * | 2018-02-26 | 2018-08-10 | 深圳智乾区块链科技有限公司 | 基于区块链的协同办公方法、系统及计算机可读存储介质 |
CN108388988B (zh) * | 2018-02-26 | 2021-07-06 | 深圳智乾区块链科技有限公司 | 基于区块链的协同办公方法、系统及计算机可读存储介质 |
CN108600008A (zh) * | 2018-04-24 | 2018-09-28 | 成都致云科技有限公司 | 服务器管理方法、服务器管理装置及分布式系统 |
CN109005224A (zh) * | 2018-07-26 | 2018-12-14 | 中国建设银行股份有限公司 | 数据分发方法及装置 |
CN109684063A (zh) * | 2018-12-26 | 2019-04-26 | 亚信科技(中国)有限公司 | 一种任务调度方法和装置 |
CN109828979A (zh) * | 2019-01-31 | 2019-05-31 | 浙江小泰科技有限公司 | 一种数据一致性检测方法及系统 |
CN110069329A (zh) * | 2019-04-15 | 2019-07-30 | 北京达佳互联信息技术有限公司 | 一种任务处理方法、装置、服务器及存储介质 |
CN110516000A (zh) * | 2019-09-02 | 2019-11-29 | 中山大学 | 一种支持复杂工作流结构的工作流管理系统 |
CN111026526A (zh) * | 2019-11-12 | 2020-04-17 | 珠海格力电器股份有限公司 | 程序的定时器配置方法、装置、存储介质及终端设备 |
CN111026526B (zh) * | 2019-11-12 | 2024-01-30 | 珠海格力电器股份有限公司 | 程序的定时器配置方法、装置、存储介质及终端设备 |
CN110928662A (zh) * | 2019-11-28 | 2020-03-27 | 国网信息通信产业集团有限公司 | 一种面向微服务架构的分布式定时任务调度器 |
CN111026809A (zh) * | 2019-12-03 | 2020-04-17 | 浪潮软件股份有限公司 | 一种调度流程分布式执行系统 |
CN111026809B (zh) * | 2019-12-03 | 2024-04-19 | 浪潮软件股份有限公司 | 一种调度流程分布式执行系统 |
CN112822250A (zh) * | 2020-12-31 | 2021-05-18 | 鲸灵科技股份有限公司 | 一种大数据平台去中心化的调度和执行方法、装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104503845B (zh) | 2017-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104503845A (zh) | 一种任务分发方法和系统 | |
US20200081731A1 (en) | Method, system and apparatus for creating virtual machine | |
CN107066319B (zh) | 一种面向异构资源的多维调度系统 | |
CN105607954B (zh) | 一种有状态容器在线迁移的方法和装置 | |
JP6190389B2 (ja) | 分散型計算環境において計算を実行する方法およびシステム | |
JP6185486B2 (ja) | 分散型計算環境において負荷均衡化を実行する方法 | |
US9438665B1 (en) | Scheduling and tracking control plane operations for distributed storage systems | |
CN106843945B (zh) | 基于PaaS的GIS应用部署方法及系统 | |
US10761869B2 (en) | Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type | |
CN113204353B (zh) | 一种大数据平台组件部署方法及装置 | |
WO2021043124A1 (zh) | 一种kbroker分布式操作系统、存储介质和电子设备 | |
CN109992373B (zh) | 资源调度方法、信息管理方法和装置及任务部署系统 | |
CN113110930A (zh) | 决策问题的云化解决方法、系统、服务器及存储介质 | |
US9261898B1 (en) | Activity tracing using distributed clock network | |
CN114448983A (zh) | 基于ZooKeeper的分布式数据交换方法 | |
CN112817606A (zh) | 用于容器镜像的部署系统及其部署方法 | |
CN112019362B (zh) | 数据传输方法、装置、服务器、终端、系统及存储介质 | |
US11916998B2 (en) | Multi-cloud edge system | |
CN115037757B (zh) | 一种多集群服务管理系统 | |
CN114615268B (zh) | 基于Kubernetes集群的服务网络、监控节点、容器节点及设备 | |
CN116149814A (zh) | 一种基于kafka的数据持久化任务分布式调度方法及系统 | |
CN113542013B (zh) | 虚拟化网络功能管理消息分配方法、装置及设备 | |
WO2022220830A1 (en) | Geographically dispersed hybrid cloud cluster | |
US9185003B1 (en) | Distributed clock network with time synchronization and activity tracing between nodes | |
CN102681881B (zh) | 跨机调度方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170714 |
|
CF01 | Termination of patent right due to non-payment of annual fee |