一种计算分布式环境长任务进度的方法与流程

文档序号:12596628阅读:来源:国知局

技术特征:

1.一种计算分布式环境长任务进度的方法,其特征在于,所述的方法包括如下步骤:

步骤1:针对各类型的长任务生命周期设置多个执行阶段,并赋予每个阶段对应比例的数值;

步骤2:由控制节点接受用户请求,创建长任务并根据实际情况分解成多个子任务,同时保存;

步骤3:由控制节点将子任务发送到实现节点;

步骤4:由实现节点接收并执行子任务,并根据设置的执行阶段向控制节点汇报子任务完成进度;

步骤5:由控制节点接收各子任务进度并更新,同时定时扫描正在执行的长任务并获取其所有子任务的进度信息,根据公式计算得出长任务进度并更新;

步骤6:用户发送请求获取长任务的最终进度。

2.根据权利要求1所述的方法,其特征在于,所述的步骤1具体是指:

事先预计该类型的长任务中子任务典型的完成里程点;

进一步预估完成各个里程点所占子任务总过程的比例,并分别设定数值;

最后设定整个子任务完成的最终数值为特定数值。

3.根据权利要求2所述的方法,其特征在于,所述的里程点可以设置为A,B,C三点;里程点A完成数值为4,继续完成里程点B则数值为7;特定数值为10。

4.根据权利要求1所述的方法,其特征在于,所述的步骤2中,由控制节点指实现长任务逻辑操作的服务;更进一步包括:将长任务保存到长任务表中,子任务保存到子任务表中并依赖于长任务。

5.根据权利要求2所述的方法,其特征在于,所述的步骤2中,由控制节点指实现长任务逻辑操作的服务;更进一步包括:将长任务保存到长任务表中,子任务保存到子任务表中并依赖于长任务。

6.根据权利要求3所述的方法,其特征在于,所述的步骤2中,由控制节点指实现长任务逻辑操作的服务;更进一步包括:将长任务保存到长任务表中,子任务保存到子任务表中并依赖于长任务。

7.根据权利要求1至6任一项所述的方法,其特征在于,所述的步骤4中,所述的实现节点接受控制节点分派的子任务并实际执行;更进一步包括:

在子任务执行的流程中,每完成一个里程点则将其对应的里程点数值上报到控制节点;

控制节点接受到子任务进度汇报信息后,将进度值更新到对应子任务数据表中。

8.根据权利要求1至6任一项所述的方法,其特征在于,所述的定时扫描,是指使用定时线程定时查询长任务数据表,针对正在进行的长任务继续查找其所有子任务的进度值,并根据公式计算得出长任务进度,最后更新数据库;

所述的公式为:

(1)当所有长任务的N个子任务正常执行中时,

长任务进度=长任务N个子任务的进度值之和/(10*N);

(2)当长任务N个子任务中有M个子任务执行失败时,

长任务进度=(长任务N-M个子任务的进度值之和+10*M)/(10*N)。

9.根据权利要求7所述的方法,其特征在于,所述的定时扫描,是指使用定时线程定时查询长任务数据表,针对正在进行的长任务继续查找其所有子任务的进度值,并根据公式计算得出长任务进度,最后更新数据库;

所述的公式为:

(1)当所有长任务的N个子任务正常执行中时,

长任务进度=长任务N个子任务的进度值之和/(10*N);

(2)当长任务N个子任务中有M个子任务执行失败时,

长任务进度=(长任务N-M个子任务的进度值之和+10*M)/(10*N)。

10.根据权利要求8所述的方法,其特征在于,所述的定时线程,是由控制节点定时器提供。

11.根据权利要求9所述的方法,其特征在于,所述的定时线程,是由控制节点定时器提供。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1