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

一种作业生成方法、作业调用方法及其相关设备与流程

2022-09-04 04:59:38 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种作业生成方法、作业调用方法及其相关设备。


背景技术:

2.对于大型企业(例如,某个银行)来说,该企业的分公司可能遍布很多地方,使得在不同地方上所开设的分公司之间可能存在时差,如此导致在针对该企业中所有分公司进行批量作业流程更新时易出现一些不易察觉的问题(例如,旧版本应用跑新流程,或者,新版本应用跑就流程等问题),从而易给该企业的服务对象造成一些麻烦(例如,经济损失等)。


技术实现要素:

3.为了解决现有技术中存在的以上技术问题,本技术提供一种作业生成方法、作业调用方法及其相关设备,能够有效地提高用户服务体验。
4.为了实现上述目的,本技术实施例提供的技术方案如下:
5.本技术实施例提供一种作业生成方法,应用于作业生成端,所述方法包括:
6.在获取到批量作业启动请求之后,从所述批量作业启动请求中提取出灰度版本标记;
7.从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;
8.利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
9.在一种可能的实施方式中,所述根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息,包括:
10.将所述灰度版本标记,确定为各所述待使用作业的灰度标记信息。
11.在一种可能的实施方式中,所述利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,包括:
12.利用所述待使用调度服务,对所述批量作业启动请求对应的作业流程数据进行解析处理,得到所述批量作业启动请求对应的至少一个待使用作业。
13.在一种可能的实施方式中,所述作业生成端与所述调度客户端之间存在数据通信链路;
14.所述方法还包括:
15.将所述至少一个待使用作业以及所述至少一个待使用作业的灰度标记信息写入作业队列表;
16.在调度客户端从所述作业队列表中拉取目标作业之后,接收所述调度客户端针对所述目标作业反馈的作业状态汇报信息;
17.利用所述作业状态汇报信息,更新所述目标作业的作业状态描述信息。
18.本技术实施例还提供了一种作业调度方法,应用于调度客户端,所述调度客户端
与作业生成端之间存在数据通信链路;所述作业生成端包括至少一个候选作业以及所述至少一个候选作业的灰度标记信息;
19.所述方法包括:
20.在确定达到作业调度条件之后,按照所述调度客户端的灰度版本配置信息,从所述作业生成端的所述至少一个候选作业中拉取所述灰度版本配置信息对应的至少一个待执行作业;
21.执行所述至少一个待执行作业。
22.在一种可能的实施方式中,所述方法还包括:
23.向所述作业生成端反馈所述至少一个待执行作业的作业状态汇报信息。
24.在一种可能的实施方式中,所述灰度版本配置信息是在所述调度客户端的安装升级过程中进行配置的。
25.本技术实施例还提供了一种作业处理系统,所述系统包括作业生成端和调度客户端;其中,所述作业生成端用于执行本技术实施例提供的作业生成方法的任一实施方式;所述调度客户端用于执行本技术实施例提供的作业调度方法的任一实施方式。
26.在一种可能的实施方式中,所述作业生成端包括调度前端模块、调度管控模块、调度服务模块和服务注册模块;
27.所述调度前端模块用于接收由运维人员触发的批量作业启动请求;
28.所述调度管控模块用于在接收到从所述调度前端模块中转发的批量作业启动请求之后,从所述批量作业启动请求中提取出灰度版本标记;
29.所述调度管控模块还用于在从所述服务注册模块中获取到第一映射关系之后,从所述第一映射关系中查找所述灰度版本标记对应的待使用调度服务;
30.所述调度管控模块还用于调用所述调度服务模块中所述待使用调度服务,以使所述调度服务模块利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
31.本技术实施例还提供了一种作业生成装置,包括:
32.提取单元,用于在获取到批量作业启动请求之后,从所述批量作业启动请求中提取出灰度版本标记;
33.查找单元,用于从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;
34.确定单元,用于利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
35.本技术实施例还提供了一种作业调度装置,包括:
36.拉取单元,用于在确定达到作业调度条件之后,按照所述调度客户端的灰度版本配置信息,从所述作业生成端的所述至少一个候选作业中拉取所述灰度版本配置信息对应的至少一个待执行作业;其中,所述调度客户端与作业生成端之间存在数据通信链路;所述作业生成端包括至少一个候选作业以及所述至少一个候选作业的灰度标记信息;
37.执行单元,用于执行所述至少一个待执行作业。
38.本技术实施例还提供了一种设备,所述设备包括处理器以及存储器:
39.所述存储器用于存储计算机程序;
40.所述处理器用于根据所述计算机程序执行本技术实施例提供的作业生成方法的任一实施方式,或者执行本技术实施例提供的作业调度方法的任一实施方式。
41.本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本技术实施例提供的作业生成方法的任一实施方式,或者执行本技术实施例提供的作业调度方法的任一实施方式。
42.本技术实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本技术实施例提供的作业生成方法的任一实施方式,或者执行本技术实施例提供的作业调度方法的任一实施方式。
43.与现有技术相比,本技术实施例至少具有以下优点:
44.对于本技术实施例提供的作业处理系统来说,该作业处理系统包括作业生成端和调度客户端;而且该作业处理系统的工作原理具体如下:如果运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以在作业生成端触发针对该批量作业流程的批量作业启动请求,以使该批量作业启动请求携带有该批量作业流程的灰度版本标记(例如,v2),以便后续先由该作业生成端从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;再由该作业生成端利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息;最后,由具有该灰度版本标记配置的调度客户端按照该灰度版本标记从该作业生成端中这些待使用作业进行执行,如此能够有效地避免因应用的实际版本与该应用所执行的作业流程的实际版本不一致而导致的不良影响,从而能够有效地提高用户服务体验。
附图说明
45.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
46.图1为本技术实施例提供的一种作业生成方法的流程图;
47.图2为本技术实施例提供的一种作业处理系统的工作原理的示意图;
48.图3为本技术实施例提供的一种作业调度方法的流程图;
49.图4为本技术实施例提供的一种作业处理系统的结构示意图;
50.图5为本技术实施例提供的一种作业生成装置的结构示意图;
51.图6为本技术实施例提供的一种作业调度装置的结构示意图。
具体实施方式
52.发明人在针对大型企业的研究中发现,该企业的分公司可能遍布很多区域(例如,亚太区域、欧非区域、美洲区域等),如此给该企业的批量作业流程更新过程带来了不便。为了便于理解,下面以银行作为示例进行说明。
53.作为示例,对于一个银行来说,如果该银行的分行遍布亚太区域、欧非区域、美洲
区域等三大区域,则该银行所使用的系统也可以包括亚太子系统、欧非子系统、美洲子系统。其中,亚太子系统用于处理亚太区域的银行服务。欧非子系统用于处理欧非区域的银行服务。美洲子系统用于处理美洲区域的银行服务。
54.另外,不同区域之间存在较大时差,而且按照海外行的监管要求,系统的会计日切换时间需要跟当地的自然日期保持一致。基于此,上述银行通常可以采用分区域物理部署提前跑批安装的方式实现批量作业流程更新过程。例如,因亚太,欧非,美洲这三个应用实例从物理上分开部署,在版本安装升级的某日(如北京时间星期六)那天,同一区域(也就是,亚太区域)的批量提前统一开始进行批量,等批量进行完毕后,再统一升级这个区域的作业流程版本,有可能在星期六完成亚太区域的批量作业流程版本安装,在星期天再完成欧非区域的批量作业流程版本安装。这种模式需要在投产日的当天发布公告,同一区域的批量的作业提前统一时间跑批,等旧版本的批量作业运行结束后,再对这个区域部署的应用下线,安装新版本的作业流程,最后再上线这个区域的应用服务。
55.然而,因同一区域中不同地方的分行之间也可能存在较小的时差,使得上述这种分区域部署的解决方案无法做到针对同一区域内不同行存在时差的个性化跑批服务,如此很容易发生因跑错批(例如,旧版本应用跑新流程,或者,新版本应用跑就流程等)而导致银行数据错乱,从而易给该银行的服务对象造成一些麻烦(例如,经济损失等)。
56.基于上述发现,为了解决背景技术部分所示的技术问题,本技术实施例提供了一种作业处理系统,该作业处理系统包括作业生成端和调度客户端;而且该作业处理系统的工作原理具体如下:如果运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以在作业生成端触发针对该批量作业流程的批量作业启动请求,以使该批量作业启动请求携带有该批量作业流程的灰度版本标记(例如,v2),以便后续先由该作业生成端从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;再由该作业生成端利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息;最后,由具有该灰度版本标记配置的调度客户端按照该灰度版本标记从该作业生成端中这些待使用作业进行执行,如此能够有效地避免因跑错批而导致的不良影响,从而能够有效地提高用户服务体验。
57.可见,本技术实施例提供的作业处理系统能够很好地满足某个企业(例如,某个银行)在同一区域内不同分公司的时差个性化跑批服务需求,以使该企业的版本安装升级的细粒度可以细化到每家分公司,从而更好满足海外行的个性化跑批服务以及海外跑批时间段的监管需要。
58.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
59.为了便于理解本技术实施例提供的作业处理系统,下面分别结合一些方法实施例介绍该作业处理系统的工作原理。
60.方法实施例一
61.参见图1,该图为本技术实施例提供的一种作业生成方法的流程图。
62.本技术实施例提供的作业生成方法,包括s101-s103:
63.s101:在作业生成端获取到批量作业启动请求之后,该作业生成端从所述批量作业启动请求中提取出灰度版本标记。
64.其中,作业生成端用于响应由运维人员触发的一些请求(例如,用于请求启动某一版本的批量作业流程的作业启动请求等);而且该作业生成端可以部署在某个企业中任意一个分公司中。
65.批量作业启动请求用于请求启动由运维人员指定版本的批量作业流程;而且该批量作业启动请求携带有该批量作业流程的灰度版本标记。
66.另外,本技术实施例不限定上述批量作业启动请求的触发方式,例如,如图2所示,如果运维人员想要启动某一版本(例如,图2所示的v2这一版本)的批量作业流程,则该运维人员不仅需要在作业生成端提供该批量作业流程的流程描述信息(例如,类似于图2中“flow”这一字符串所示的流程名称等),还可以在从作业生成端中针对该批量作业流程所提供的至少一个可选灰度中选择所需执行的灰度(例如,图2所示的v2),作为该批量作业流程的灰度版本标记,以使该作业生成端能够基于该运维人员的操作触发批量作业启动请求,以使该批量作业启动请求能够表示出该运维人员希望该批量作业流程按照哪个灰度版本进行启动。
67.此外,本技术实施例不限定一个批量作业流程的各个可选灰度的确定过程,例如,对于该批量作业流程来说,如果运维人员想要针对该批量作业流程进行变更升级,则该运维人员可以通过在作业生成端上针对该批量作业流程提供的变更升级页面上触发一些操作的方式,实现针对该批量作业流程的一次变更升级过程;而且,在针对该批量作业流程的变更升级过程中,还可以针对此次变更升级结果设定一个灰度版本号,并将该灰度版本号作为该批量作业流程的一个可选灰度。
68.基于上段内容可知,对于一个批量作业流程来说,如果该批量作业流程经历过至少一次变更升级,则可以针对该批量作业流程构建一张流程管理表(例如,图2所示的以“流程管理”作为表名的表),以使该流程管理表用于记录该批量作业流程的作业流程名称与该批量作业流程的各个可选灰度之间的对应关系,从而使得该流程管理表能够表示出该批量作业流程的各个版本。
69.还有,本技术实施例不限定上述流程管理表的存储位置,例如,可以将该流程管理表存储至作业生成端中预设第一位置(例如,图2所示的调度前端模块),以使该作业生成端能够比较方便地使用该流程管理表。
70.基于上述s101的相关内容可知,对于部署在某个分公司(例如,某个分行)中的作业生成端来说,如果该分公司的运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以在该作业生成端触发针对该批量作业流程的批量作业启动请求,以使该批量作业启动请求携带有该批量作业流程的灰度版本标记(例如,图2所示的v2),以便该作业生成端能够从该批量作业启动请求中提取出该灰度版本标记,以使该灰度版本标记能够表示出该运维人员想要在该分公司中针对该批量作业流程使用哪一个版本。
71.s102:作业生成端从第一映射关系中查找所述灰度版本标记对应的待使用调度服务。
72.其中,第一映射关系用于记录不同版本的批量作业流程分别可以被哪一个调度服
务进行解析处理;而且本技术实施例不限定该第一映射关系,例如,其可以包括该批量作业流程的第n个可选灰度与第n个候选调度服务之间的对应关系。n为正整数,n≤n,n为正整数,n表示可选灰度的个数。
73.另外,本技术实施例不限定上述“批量作业流程的第n个可选灰度与第n个候选调度服务之间的对应关系”的构建过程,例如,由于在针对批量作业流程进行变更升级时,可能也会针对由作业生成端对该批量作业流程所提供的调度服务进行相应地变更升级,以使变更升级后的调度服务能够针对变更升级后的批量作业流程进行解析处理。此时,为了便于后续能够更好地追溯该变更升级后的调度服务,可以将变更升级后的批量作业流程的灰度版本号与该变更升级后的调度服务之间建立对应关系,并将该对应关系添加至该批量作业流程所对应的第一映射关系中,以便后续能够基于该灰度版本号从该第一映射关系中追溯到该变更升级后的调度服务。
74.此外,本技术实施例不限定上述第一映射关系的存储位置,例如,可以将该第一映射关系存储至作业生成端中预设第二位置(例如,图2所示的服务注册模块),以使该作业生成端能够比较方便地使用该第一映射关系。
75.上文“待使用调度服务”用于表示由运维人员针对上述批量作业流程指定的调度服务;而且该待使用调度服务与上文灰度版本标记之间的对应关系被记录在第一映射关系中。
76.基于上述s102的相关内容可知,对于作业生成端来说,在该作业生成端从批量作业启动请求中提取出灰度版本标记之后,该作业生成端可以从第一映射关系中查找所述灰度版本标记对应的待使用调度服务,以使该待使用调度服务能够表示出由运维人员针对灰度版本标记下批量作业流程所指定的调度服务,从而使得该待使用调度服务能够对该批量作业流程进行解析处理。
77.s103:作业生成端利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
78.上述“至少一个待使用作业”用于描述在灰度版本标记下批量作业流程中所记录的作业。
79.另外,上述“至少一个待使用作业”可以利用待使用调度服务针对所述批量作业启动请求对应的批量作业流程(也就是,在上文灰度版本标记下批量作业流程)进行解析处理得到的。
80.需要说明的是,本技术实施例不限定上述解析处理的实施方式,例如,可以采用现有的或者未来出现的任意一种能够从批量作业流程中解析出作业的方法进行实施。
81.第m个待使用作业的灰度标记信息用于表示该第m个待使用作业是从哪一版的批量作业流程中解析所得的;而且该“第m个待使用作业的灰度标记信息”的确定过程具体可以为:将上文灰度版本标记,确定为该第m个待使用作业的灰度标记信息。m为正整数,m≤m,m为正整数,m表示待使用作业的个数。
82.基于上述s101至s103的相关内容可知,对于本技术实施例提供的作业生成方法来说,如果运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以在作业生成端触发针对该批量作业流程的批量作业启动请求,以使该批量作业启动请求携
带有该批量作业流程的灰度版本标记(例如,v2),以便后续先由该作业生成端从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;再由该作业生成端利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息,以便后续由具有该灰度版本标记配置的调度客户端按照该灰度版本标记从该作业生成端中这些待使用作业进行执行,如此能够有效地避免因跑错批而导致的不良影响,从而能够有效地提高用户服务体验。
83.另外,为了进一步批量作业流程的执行效果,本技术实施例还提供了上文作业生成方法的另一种可能的实施方式,在该实施方式中,当作业生成端与调度客户端之间存在数据通信链路时,该作业生成方法不仅可以包括上述s101-s103,可以还包括s104-s106:
84.s104:作业生成端将所述至少一个待使用作业以及所述至少一个待使用作业的灰度标记信息写入作业队列表。
85.其中,作业队列表用于记录作业生成端中至少一个作业。例如,该作业队列表可以是图2所示的作业队列表。
86.基于上述s104的相关内容可知,对于作业生成端来说,当该作业生成端从在上文灰度版本标记下批量作业流程中解析出至少一个待使用作业之后,该作业生成端可以将这些待使用作业及其灰度标记信息写入作业队列表,以使该作业队列表不仅记录有各个待使用作业,还记录有各个待使用作业的灰度标记信息,以便后续由具有不同灰度版本的调度客户端按照这些灰度标记信息筛选出其可执行的作业。
87.s105:在调度客户端从所述作业队列表中拉取目标作业之后,作业生成端接收所述调度客户端针对所述目标作业反馈的作业状态汇报信息。
88.其中,调度客户端(例如,图2所示的调度客户端模块)的相关内容请参见下文方法实施例二的相关内容。
89.上述“目标作业”用于表示作业队列表中被调度客户端拉取执行的作业。
90.上述“作业状态汇报信息”用于描述目标作业的执行状态(例如,未执行、正在执行、执行完成、执行失败等)。
91.基于上述s105的相关内容可知,对于作业生成端来说,在该作业生成端将这些待使用作业以及这些待使用作业的灰度标记信息写入作业队列表之后,可以由与上文灰度版本标记相对应的调度客户端按照该灰度版本标记从该作业队列表拉取至少一个待使用作业进行执行,并将这些待使用作业的作业状态汇报信息反馈给该作业生成端,以使该作业生成端能够从这些作业状态汇报信息中获知这些待使用作业的执行状态。
92.s106:作业生成端利用所述作业状态汇报信息,更新所述目标作业的作业状态描述信息。
93.本技术实施例中,对于作业生成端来说,在该作业生成端从调度客户端中获取到目标作业的作业状态汇报信息之后,该作业生成端可以利用该作业状态汇报信息,更新该目标作业的作业状态描述信息(例如,直接将该作业状态汇报信息,确定为该目标作业的作业状态描述信息),以使该作业状态描述信息能够表示出该目标作业的执行状态。
94.基于上述s104至s106的相关内容可知,对于作业生成端来说,在该作业生成端确定出至少一个待使用作业以及这些待使用作业的灰度标记信息之后,该作业生成端可以先将这些待使用作业及其灰度标记信息写入作业队列表,以便后续由与上文灰度版本标记相
对应的调度客户端可以按照该灰度版本标记从该作业队列表拉取至少一个待使用作业进行执行,如此能够有效地避免因跑错批而导致的不良影响,从而能够有效地提高用户服务体验。另外,该作业生成端还可以借助由调度客户端针对作业反馈的作业状态汇报信息,及时地更新该作业的作业状态描述信息,以使该作业生成端能够实现实时更新作业状态的目的,如此有利于运维人员更好地获知各个作业是否能够正常运行。
95.另外,为了进一步批量作业流程的执行效果,本技术实施例还提供了上文作业生成端的一种可能的实施方式,如图2所示,该作业生成端可以包括调度前端模块、调度管控模块、调度服务模块和服务注册模块。为了便于理解,下面结合示例进行说明。
96.作为示例,本技术实施例提供的作业生成方法,至少包括以下步骤11-步骤17:
97.步骤11:调度前端模块接收由运维人员触发的批量作业启动请求。
98.其中,调度前端模块用于向运维人员提供一些可操作页面,以使该运维人员能够在这些可操作页面上触发某些请求(例如,用于请求针对某一批量作业流程提供进行变更升级的批量作业升级请求,或者,用于请求启动某一版本的批量作业流程的批量作业启动请求等)。
99.可见,对于部署在某个分公司(例如,某个分行)中的作业生成端来说,如果该分公司的运维人员想要针对某一批量作业流程进行变更升级,则该运维人员可以通过在该作业生成端的调度前端模块上针对该批量作业流程提供的变更升级页面上触发一些操作的方式,实现针对该批量作业流程的一次变更升级过程;而且如果该运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以通过在该作业生成端的调度前端模块上触发针对该批量作业流程的批量作业启动请求的方式,实现针对该批量作业流程的作业生成过程。
100.另外,调度前端模块还用于向运维人员提供上文流程管理表(例如,图2所示的以“流程管理”作为表名的表),以使该运维人员能够从该流程管理表中查看到每一批量作业流程的相关内容(例如,流程名称、启动按钮、至少一个可选灰度的选择列表等)。
101.基于上述步骤11的相关内容可知,对于部署在某个分公司(例如,某个分行)中的作业生成端来说,如果该分公司的运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以在该作业生成端的调度前端模块上触发针对该批量作业流程的批量作业启动请求,以使该批量作业启动请求携带有该批量作业流程的灰度版本标记(例如,图2所示的v2),以便后续由该作业生成端的调度管控模块能够从该批量作业启动请求中提取出该灰度版本标记,以使该灰度版本标记能够表示出该运维人员想要在该分公司中针对该批量作业流程使用哪一个版本。
102.步骤12:在调度管控模块接收到从所述调度前端模块中转发的批量作业启动请求之后,该调度管控模块从所述批量作业启动请求中提取出灰度版本标记。
103.本技术实施例不限定上述步骤“调度管控模块接收到从所述调度前端模块中转发的批量作业启动请求”的实施方式,例如,其具体可以采用现有的或者未来出现的任意一种信息转发方式(例如,图2所示的借助nginx进行转发的方式)进行实施。其中,nginx(engine x)是一个高性能的超文本传输协议(hyper text transfer protocol,http)和反向代理万维网(world wide web,web)服务器。
104.基于上述步骤12的相关内容可知,对于作业生成端来说,在该作业生成端的调度
前端模块接收到由运维人员触发的批量作业启动请求之后,该调度前端模块可以通过预设信息转发方式(例如,图2所示的借助nginx进行转发的方式),将该批量作业启动请求发送给该作业生成端的调度管控模块,以使该调度管控模块能够从该批量作业启动请求中提取出灰度版本标记,以便后续由该调度管控模块基于该灰度版本标记进行服务调度。
105.步骤13:在调度管控模块从所述服务注册模块中获取到第一映射关系之后,该调度管控模块从所述第一映射关系中查找所述灰度版本标记对应的待使用调度服务。
106.其中,服务注册模块可以用于为调度管控模块、调度服务模块、以及调度服务客户端提供服务注册和服务发现的功能。例如,当该服务注册模块确定某个模块的某个节点服务不可用时,该服务注册模块可以及时把这个故障节点移除,并通知其他订阅的模块不要使用这个故障节点。
107.服务注册模块还可以用于向调度管控模块提供第一映射关系,以使该调度管控模块能够从该第一映射关系中获知不同版本的批量作业流程分别可以被哪一个调度服务进行解析处理。
108.基于上述步骤13的相关内容可知,对于作业生成端来说,在该作业生成端的调度管控模块从上文批量作业启动请求中提取出灰度版本标记之后,该调度管控模块可以基于该灰度版本标记,从所述服务注册模块所提供的第一映射关系中查找该灰度版本标记对应的待使用调度服务,以便后续由该调度管控模块通过调用该待使用调度服务的方式完成针对该批量作业启动请求的作业生成过程。
109.步骤14:调度管控模块调用所述调度服务模块中所述待使用调度服务,以使所述调度服务模块利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
110.本技术实施例不限定上述步骤“调度管控模块调用所述调度服务模块中所述待使用调度服务”的实施方式,例如,如图2所示,其具体可以为:在调度管控模块查找到上文灰度版本标记对应的待使用调度服务之后,该调度模块可以先基于该待使用调度服务的服务标识,生成服务调度请求,以使该服务调度请求携带有该待使用调度服务的服务标识;然后,该调度管控模块将该服务调度请求发送给调度服务模块,以便在该调度服务模块接收到该服务调度请求之后,该调度服务模块可以从该服务调度请求中提取该服务标识,并利用具有该服务标识的待使用调度服务针对该批量作业启动请求对应的作业流程数据进行解析处理,得到该批量作业启动请求对应的至少一个待使用作业。
111.基于上述步骤14的相关内容可知,对于作业生成端来说,在该作业生成端的调度管控模块查找到上文灰度版本标记对应的待使用调度服务之后,该调度管控模块可以通过预设调用方式,调用调度服务模块中待使用调度服务,以使该调度服务模块不仅能够利用该待使用调度服务,生成批量作业启动请求对应的至少一个待使用作业,还能够根据该灰度版本标记,确定这些待使用作业的灰度标记信息。
112.步骤15:调度服务模块将所述至少一个待使用作业以及所述至少一个待使用作业的灰度标记信息写入作业队列表。
113.本技术实施例中,对于作业生成端来说,在该作业生成端的调度服务模块获取到至少一个待使用作业以及这些待使用作业的灰度标记信息之后,该调度服务模块可以将这些待使用作业以及这些待使用作业的灰度标记信息写入作业队列表,以支持具有不同灰度
版本的调度客户端模块拉取其对应灰度标记信息的作业。
114.步骤16:在调度客户端从所述作业队列表中拉取目标作业之后,调度服务模块接收所述调度客户端针对所述目标作业反馈的作业状态汇报信息。
115.本技术实施例中,对于在作业生成端的调度服务模块中存在的作业队列表来说,调度客户端(应用)可以按照其灰度版本对应的灰度标记信息从该作业队列表中拉取目标作业,以使该目标作业的灰度标记信息与该调度客户端所具有的灰度版本之间存在对应关系;而且该调度客户端不仅可以执行该目标作业,还可以将该目标作业的执行状态反馈给该调度服务模块,以使该调度服务模块能够基于该反馈内容,及时地更新其上针对该目标作业所记录的作业状态描述信息,如此能够实现由该调度服务模块实时监测作业执行状态的目的。
116.需要说明的是,上述“目标作业的灰度标记信息与该调度客户端所具有的灰度版本之间存在对应关系”可以存储在服务注册模块中。
117.步骤17:调度服务模块利用所述作业状态汇报信息,更新所述目标作业的作业状态描述信息。
118.本技术实施例中,对于在作业生成端的调度服务模块来说,在该调度服务模块获取到由调度客户端针对目标作业反馈的作业状态汇报信息之后,该调度服务模块可以利用该作业状态汇报信息,及时地更新其上针对该目标作业所记录的作业状态描述信息,如此能够实现由该调度服务模块实时监测作业执行状态的目的。
119.基于上述步骤11至步骤17的相关内容可知,对于包括调度前端模块、调度管控模块、调度服务模块和服务注册模块的作业生成端来说,该作业生成端可以借助这些模块之间的数据通信过程实现针对某一版本的批量作业流程的批量作业启动过程。
120.结合上述作业生成方法的相关内容,下面借助作业调度方法的至少一种可能的实施方式详细地介绍调度客户端的相关内容。
121.方法实施例二
122.参见图3,该图为本技术实施例提供的一种作业调度方法的流程图。
123.本技术实施例提供的作业调度方法,包括s301-s302:
124.s301:在调度客户端确定达到作业调度条件之后,该调度客户端按照所述调度客户端的灰度版本配置信息,从所述作业生成端的所述至少一个候选作业中拉取所述灰度版本配置信息对应的至少一个待执行作业。
125.其中,调度客户端(例如,图2所示的调度客户端模块)用于向上文企业的客户提供服务,而且该调度客户端可以是面向用户的应用(如图2所示的应用)。
126.另外,调度客户端可以作为软件开发工具包(software development kit,sdk)集成到由上文企业针对其客户提供的用于提供服务的应用上。
127.此外,调度客户端与作业生成端之间存在数据通信链路。也就是,调度客户端与作业生成端之间可以进行数据通信。
128.还有,调度客户端安装升级的过程会配置灰度标记版本号并注册到服务注册模块。
129.另外,上述服务注册模块中还记录有针对该调度客户端配置的灰度标记版本号对应于哪一个版本的批量作业流程,以便后续调度客户端可以从该服务注册模块中获知其可
以被用于执行从哪一个版本的批量作业流程中解析所得的作业。
130.上文“作业调度条件”可以预先设定,例如,其具体可以为:按照预设时间间隔。也就是,每隔一段时间,调度客户端模块就会从调度服务端模块中根据该调度客户端的灰度版本配置信息拉取状态为待执行的作业来执行。
131.上文“调度客户端的灰度版本配置信息”用于表示在该调度客户端安装升级过程中针对该调度客户端所配置的灰度标记版本号。
132.上文“至少一个候选作业”是指作业生成端所提供的作业。例如,其可以包括该作业生成端的作业队列表中所有作业。
133.上文“待执行作业”用于表示能够被调度客户端执行的作业;而且该待执行作业的灰度标记信息与该调度客户端的灰度版本配置信息之间存在对应关系。另外,该对应关系通常可以存储在上文服务注册模块中。
134.本技术实施例不限定上文“至少一个待执行作业”的拉取方式,例如,其具体可以为:调度客户端按照所述调度客户端的灰度版本配置信息,从所述作业生成端的作业队列表中拉取所述灰度版本配置信息对应的至少一个待执行作业。
135.基于上述s301的相关内容可知,对于调度客户端来说,在该调度客户端确定达到作业调度条件之后,该调度客户端可以按照其灰度版本配置信息,从所述作业生成端的作业队列表中拉取其灰度版本配置信息对应的至少一个待执行作业,以使这些待执行作业的灰度标记信息与该调度客户端的灰度版本配置信息之间存在对应关系,从而使得这些待执行作业所属的批量作业流程所具有的灰度版本号与该调度客户端所具有的灰度版本号保持一致,如此能够有效地避免跑错批的发生,从而能够有效地提高用户服务体验。
136.s302:调度客户端执行所述至少一个待执行作业。
137.本技术实施例中,对于调度客户端来说,在该调度客户端从作业生成端的作业队列表中拉取到至少一个待执行作业之后,该调度客户端可以按照预设执行方式(例如,先入先出等),执行这些待执行作业。
138.基于上述s301至s302的相关内容可知,对于本技术实施例提供的作业调度方法来说,在调度客户端确定达到作业调度条件之后,该调度客户端按照所述调度客户端的灰度版本配置信息,从所述作业生成端的所述至少一个候选作业中拉取所述灰度版本配置信息对应的至少一个待执行作业进行执行,如此能够有效地避免跑错批的发生,从而能够有效地提高用户服务体验。
139.另外,本技术实施例还提供了作业调度方法的另一种可能的实施方式,在该实施方式中,该作业调度方法不仅包括上文s301-s302,可以还包括s303:
140.s303:调度客户端向所述作业生成端反馈所述至少一个待执行作业的作业状态汇报信息,以使所述作业生成端依据这些待执行作业的作业状态汇报信息,更新这些待执行作业的作业状态描述信息。
141.本技术实施例中,对于调度客户端来说,在该调度客户端从作业生成端的作业队列表中拉取到至少一个待执行作业之后,该调度客户端不仅可以执行这些待执行作业,还可以将这些待执行作业的作业状态汇报信息实时地反馈给作业生成端,以使所述作业生成端可以依据这些待执行作业的作业状态汇报信息,及时地更新这些待执行作业的作业状态描述信息,如此能够实现由该作业生成端实时监测作业执行状态的目的。
142.基于上述方法实施例提供的作业生成方法和作业调度方法,本技术实施例还提供了一种作业处理系统,下面结合附图进行解释和说明。
143.系统实施例
144.系统实施例提供的作业处理系统的技术详情,请参照上述方法实施例。
145.参见图4,该图为本技术实施例提供的一种作业处理系统的结构示意图。
146.本技术实施例提供的作业处理系统400,包括作业生成端401和调度客户端402。其中,所述作业生成端401用于执行本技术实施例提供的作业生成方法的任一实施方式;所述调度客户端用于执行本技术实施例提供的作业调度方法的任一实施方式。
147.在一种可能的实施方式中,作业生成端401包括调度前端模块、调度管控模块、调度服务模块和服务注册模块;
148.其中,所述调度前端模块用于接收由运维人员触发的批量作业启动请求;
149.所述调度管控模块用于在接收到从所述调度前端模块中转发的批量作业启动请求之后,从所述批量作业启动请求中提取出灰度版本标记;
150.所述调度管控模块还用于在从所述服务注册模块中获取到第一映射关系之后,从所述第一映射关系中查找所述灰度版本标记对应的待使用调度服务;
151.所述调度管控模块还用于调用所述调度服务模块中所述待使用调度服务,以使所述调度服务模块利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
152.基于上文相关内容可知,上述这些模块具有以下功能:
153.(1)对于调度前端模块来说,该模块提供的主要功能包括:为运维人员提供批量作业流程的变更升级的画面,运维在人员在作业批量流程版本安装升级的过程,可以对变更后的批量作业流程选择版本号,当运维人员启动批量作业流程时,调度前端模块会把这个版本号转发到调度管控模块。在调度前端模块,会建立一张流程管理的表。记录同一个作业流程名称的不同版本。
154.(2)对于调度管控模块来说,该模块提供的主要功能:因调度服务模块安装升级的过程会配置灰度标记版本号并注册到服务注册模块,如此为调度管控模块和调度客户端调用服务模块提供标志,区别灰度标记版本。可见,当该模块收到调度前端模块发送过来的启动批量请求时,就会根据灰度表的版本调用指定的调度服务模块。
155.(3)对于调度服务模块来说,该模块提供的主要功能包括:该调度服务模块安装升级的过程会配置灰度标记版本号并注册到服务注册模块,当该模块收到调度管控模块发过来的请求时,会解析对应的作业流程数据,并把作业对应的灰度标记版本信息写入作业队列表中,用来支持调度客户端拉取对应灰度标记的作业。调度服务模块也会监听调度客户端(应用)针对作业发送过来的状态汇报信息,当批量作业执行完成,或者失败会更新对应的作业状态信息。
156.(4)对于服务注册模块来说,该模块的主要功能包括:主要为调度管控模块,调度服务模块,调度服务客户端提供服务注册和服务发现的功能,当某个模块的某个节点服务不可用时,及时把这个故障节点移除,并通知其他订阅的模块不要使用这个故障节点。
157.(5)对于调度服务客户端来说,该调度服务客户端的主要功能:调度客户端端模块作为sdk集成到各个应用,调度客户端(应用)安装升级的过程会配置灰度标记版本号并注
册到服务注册模块,每隔一段时间,调度客户端就会从调度服务端模块根据灰度标记版本号拉取状态为待执行的作业来执行。当作业执行完后,会把执行完的作业状态汇报给调度服务端模块,由调度服务端模块更新作业的执行状态。
158.基于上述模块的相关内容可知,上文作业处理系统400的工作原理可以包括步骤21-步骤27:
159.步骤21:调度管控服务模块、调度服务模块、以及调度客户端在版本安装升级的过程,配置灰度标记版本信息,注册到服务注册模块。
160.步骤22:运维人员在调度前端模块安装升级批量作业流程版本并选择配置对应的作业流程版本信息,启动批量作业时,选择对应的批量作业流程灰度标记版本,作业流程变更的灰度版本记录到流程管理表。
161.步骤23:调度前端模块发送执行批量作业的请求到调度管控模块。
162.步骤24:调度管控模块根据配置的调度灰度标记版本调用对应的调度服务模块。
163.步骤25:调度服务模块收到调度管控模块的发起批量作业请求,解析待运行的作业流程,并把作业的灰度版本信息记录到作业队表。
164.步骤26:调度客户端每隔一段时间从调度服务模块的作业队列表拉取对应灰度标记版本的作业,开始执行作业。
165.步骤27:调度客户端执行完作业后,把作业的状态汇报给调度服务模块,由调度服务模块更新作业状态,调度客户端再拉取下一个作业执行。
166.基于上述步骤21至步骤27的相关内容可知,因上文作业处理系统400采用全链路的灰度标记版本信息跟踪识别新旧两套版本的作业流程执行,使得该作业处理系统400能够打破分区域物理部署逻辑的限制,更好满足某个企业中各个分公司的个性化跑批服务以及当地跑批时间段的监管需要。
167.基于上述方法实施例提供的作业生成方法,本技术实施例还提供了一种作业生成装置,下面结合附图进行解释和说明。
168.装置实施例
169.装置实施例提供的作业生成装置的技术详情,请参照上述方法实施例。
170.参见图5,该图为本技术实施例提供的一种作业生成装置的结构示意图。
171.本技术实施例提供的作业生成装置500,包括:
172.提取单元501,用于在获取到批量作业启动请求之后,从所述批量作业启动请求中提取出灰度版本标记;
173.查找单元502,用于从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;
174.确定单元503,用于利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息。
175.在一种可能的实施方式中,所述确定单元503,包括:
176.标记确定子单元,用于将所述灰度版本标记,确定为各所述待使用作业的灰度标记信息。
177.在一种可能的实施方式中,所述确定单元503,包括:
178.解析处理子单元,用于利用所述待使用调度服务,对所述批量作业启动请求对应的作业流程数据进行解析处理,得到所述批量作业启动请求对应的至少一个待使用作业。
179.在一种可能的实施方式中,所述作业生成端与所述调度客户端之间存在数据通信链路;
180.所述作业生成装置500还包括:
181.写入单元,用于将所述至少一个待使用作业以及所述至少一个待使用作业的灰度标记信息写入作业队列表;
182.接收单元,用于在调度客户端从所述作业队列表中拉取目标作业之后,接收所述调度客户端针对所述目标作业反馈的作业状态汇报信息;
183.更新单元,用于利用所述作业状态汇报信息,更新所述目标作业的作业状态描述信息。
184.基于上述作业生成装置500的相关内容可知,对于本技术实施例提供的作业生成装置500来说,如果运维人员想要启动某一版本(例如,最新版本)的批量作业流程,则该运维人员可以在作业生成装置500触发针对该批量作业流程的批量作业启动请求,以使该批量作业启动请求携带有该批量作业流程的灰度版本标记(例如,v2),以便后续先由该作业生成装置500从第一映射关系中查找所述灰度版本标记对应的待使用调度服务;再由该作业生成装置500利用所述待使用调度服务,生成所述批量作业启动请求对应的至少一个待使用作业,并根据所述灰度版本标记,确定所述至少一个待使用作业的灰度标记信息,以便后续由具有该灰度版本标记配置的调度客户端按照该灰度版本标记从该作业生成装置500中这些待使用作业进行执行,如此能够有效地避免因跑错批而导致的不良影响,从而能够有效地提高用户服务体验。
185.基于上述方法实施例提供的作业调度方法,本技术实施例还提供了一种作业调度装置,下面结合附图进行解释和说明。
186.装置实施例
187.装置实施例提供的作业调度装置的技术详情,请参照上述方法实施例。
188.参见图6,该图为本技术实施例提供的一种作业调度装置的结构示意图。
189.本技术实施例提供的作业调度装置600,包括:
190.拉取单元601,用于在确定达到作业调度条件之后,按照所述调度客户端的灰度版本配置信息,从所述作业生成端的所述至少一个候选作业中拉取所述灰度版本配置信息对应的至少一个待执行作业;其中,所述调度客户端与作业生成端之间存在数据通信链路;所述作业生成端包括至少一个候选作业以及所述至少一个候选作业的灰度标记信息;
191.执行单元602,用于执行所述至少一个待执行作业。
192.在一种可能的实施方式中,所述作业调度装置600还包括:
193.反馈单元,用于向所述作业生成端反馈所述至少一个待执行作业的作业状态汇报信息。
194.在一种可能的实施方式中,所述灰度版本配置信息是在所述调度客户端的安装升级过程中进行配置的。
195.基于上述作业调度装置600的相关内容可知,对于本技术实施例提供的作业调度装置600来说,在确定达到作业调度条件之后,按照所述调度客户端的灰度版本配置信息,
从所述作业生成端的所述至少一个候选作业中拉取所述灰度版本配置信息对应的至少一个待执行作业进行执行,如此能够有效地避免跑错批的发生,从而能够有效地提高用户服务体验。
196.进一步地,本技术实施例还提供了一种设备,所述设备包括处理器以及存储器:
197.所述存储器用于存储计算机程序;
198.所述处理器用于根据所述计算机程序执行本技术实施例提供的作业生成方法的任一实施方式,或者执行本技术实施例提供的作业调度方法的任一实施方式。
199.进一步地,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本技术实施例提供的作业生成方法的任一实施方式,或者执行本技术实施例提供的作业调度方法的任一实施方式。
200.进一步地,本技术实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本技术实施例提供的作业生成方法的任一实施方式,或者执行本技术实施例提供的作业调度方法的任一实施方式。
201.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
202.以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献