调度方法及装置、电子设备和存储介质制造方法及图纸

技术编号:32261505 阅读:11 留言:0更新日期:2022-02-12 19:22
本公开涉及一种调度方法及装置、电子设备和存储介质,所述方法包括:根据待处理任务的任务信息,在注册数据库中确定目标业务单元的目标地址;将任务数据进行序列化,获得任务数据对象;将任务数据对象发送至所述目标地址,使得目标业务单元对待处理任务进行处理,获得处理结果。根据本公开的实施例的调度方法,可在注册数据库中存储各业务单元的功能信息和地址,便于调度控制单元调用,可实现调度控制单元和业务单元解耦,便于业务功能的扩展和维护,还可基于任务信息选择最适合的业务单元,提升任务执行效率。提升任务执行效率。提升任务执行效率。

【技术实现步骤摘要】
调度方法及装置、电子设备和存储介质


[0001]本公开涉及计算机
,尤其涉及一种调度方法及装置、电子设备和存储介质。

技术介绍

[0002]分布式任务调度在业务系统开发中被广泛使用,如图像文件数据定时清理、批量数据定时分析等等。目前在J2EE应用中主要基于quartz框架二次开发实现,或者直接集成xxl

job、elasticJob等开源框架。但上述方式中,调度控制单元与业务单元耦合性较强,不利于业务单元的更新和运维管理。并且跨语言执行不够便利。

技术实现思路

[0003]本公开提出了一种调度方法及装置、电子设备和存储介质。
[0004]根据本公开的一方面,提供了一种调度方法,包括:根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,其中,所述任务信息包括待处理任务的任务类型,所述注册数据库中包括至少一个业务单元的功能信息和地址;将所述待处理任务的任务数据进行序列化,获得任务数据对象;将所述任务数据对象发送至所述目标地址,使得所述目标业务单元根据所述任务数据对象对所述待处理任务进行处理,获得处理结果。
[0005]根据本公开的实施例的调度方法,可在注册数据库中存储各业务单元的功能信息和地址,便于调度控制单元调用,可实现调度控制单元和业务单元解耦,便于业务功能的扩展和维护,还可基于任务信息选择最适合的业务单元,提升任务执行效率。并且,调度控制单元与业务单元解耦,可通过功能信息和地址实现跨语言调用多种业务单元,可实现多种程序语言任务的调度,将任务数据序列化有利于跨语言调用时在调度控制单元与业务单元传输数据,减少了数据不兼容的问题。
[0006]在一种可能的实现方式中,根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,包括:将所述待处理任务拆分为多个子任务,其中,所述任务信息包括所述多个子任务的子任务信息;根据所述多个子任务的子任务信息,在注册数据库中确定用于处理各个子任务的目标业务单元的目标地址。
[0007]通过这种方式,可将待处理任务划分为多个子任务,以并行执行多个子任务,提高任务处理效率。
[0008]在一种可能的实现方式中,所述注册数据库还包括至少一个业务单元的处理资源信息,所述任务信息还包括处理资源需求信息,根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,包括:根据待处理任务的任务类型和处理资源需求信息,以及至少一个业务单元的处理资源信息和功能信息,确定所述目标业务单元的目标地址。
[0009]通过这种方式,可通过目标业务单元的类型和负载,选择适合执行待处理任务的
目标业务单元,可选择功能匹配的业务单元,并可使选择的目标业务单元的负载均衡,提高任务处理效率。
[0010]在一种可能的实现方式中,所述方法还包括:获取所述目标业务单元发送的待处理任务的结果对象,其中,所述结果对象是所述目标业务单元对所述处理结果进行序列化获得的;将所述结果对象进行反序列化,获得所述待处理任务的处理结果。
[0011]在一种可能的实现方式中,所述目标业务单元根据所述任务数据对象对所述待处理任务进行处理,获得处理结果,包括:对所述任务数据对象进行反序列化,获得任务数据;对所述任务数据进行处理,获得处理结果。
[0012]在一种可能的实现方式中,所述方法还包括:将业务单元的功能信息和地址添加至注册数据库。
[0013]根据本公开的一方面,提供了一种调度装置,包括:调度控制单元、业务单元和注册数据库,
[0014]所述注册数据库中包括至少一个业务单元的功能信息和地址;
[0015]所述调度控制单元用于:根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,其中,所述任务信息包括待处理任务的任务类型;将所述待处理任务的任务数据进行序列化,获得任务数据对象;将所述任务数据对象发送至所述目标地址,
[0016]所述目标业务单元用于:根据所述任务数据对象对所述待处理任务进行处理,获得处理结果。
[0017]在一种可能的实现方式中,所述调度控制单元进一步用于:将所述待处理任务拆分为多个子任务,其中,所述任务信息包括所述多个子任务的子任务信息;根据所述多个子任务的子任务信息,在注册数据库中确定用于处理各个子任务的目标业务单元的目标地址。
[0018]在一种可能的实现方式中,所述注册数据库还包括至少一个业务单元的处理资源信息,所述任务信息还包括处理资源需求信息,所述调度控制单元进一步用于:根据待处理任务的任务类型和处理资源需求信息,以及至少一个业务单元的处理资源信息和功能信息,确定所述目标业务单元的目标地址。
[0019]在一种可能的实现方式中,所述调度控制单元还用于:获取所述目标业务单元发送的待处理任务的结果对象,其中,所述结果对象是所述目标业务单元对所述处理结果进行序列化获得的;将所述结果对象进行反序列化,获得所述待处理任务的处理结果。
[0020]在一种可能的实现方式中,所述目标业务单元进一步用于:对所述任务数据对象进行反序列化,获得任务数据;对所述任务数据进行处理,获得处理结果。
[0021]在一种可能的实现方式中,所述业务单元还用于:将业务单元的功能信息和地址添加至注册数据库。
[0022]根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
[0023]根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
[0024]根据本公开的实施例的调度方法,可在注册数据库中存储各业务单元的功能信息和地址,便于调度控制单元调用,可实现调度控制单元和业务单元解耦,无需将业务单元集成于调度控制单元中,也无需将调度控制单元集成于业务单元中,简化调度任务的开发实现过程,使开发者保持原有服务开发方式,只需要简单配置或注释即可完成调度服务的注册,并通过调度控制单元进行调度,便于业务功能的扩展和维护,还可基于任务信息选择最适合的业务单元,提升任务执行效率。并且,调度控制单元与业务单元解耦,可通过功能信息和地址实现跨语言调用多种业务单元,可以利用多语言sdk实现跨语言调度。同时,将任务数据对象化有利于跨语言调用时在调度控制单元与业务单元传输数据,减少了数据不兼容的问题。进一步地,还可将待处理任务划分为多个子任务,以并行执行多个子任务,并基于目标业务单元的类型和负载,选择适合的目标业务单元,可选择功能匹配的业务单元,并可使选择的目标业务单元的负载均衡,提高任务处理效率。
[0025]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种调度方法,其特征在于,所述方法用于调度控制单元,包括:根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,其中,所述任务信息包括待处理任务的任务类型,所述注册数据库中包括至少一个业务单元的功能信息和地址;将所述待处理任务的任务数据进行序列化,获得任务数据对象;将所述任务数据对象发送至所述目标地址,使得所述目标业务单元根据所述任务数据对象对所述待处理任务进行处理,获得处理结果。2.根据权利要求1所述的方法,其特征在于,根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,包括:将所述待处理任务拆分为多个子任务,其中,所述任务信息包括所述多个子任务的子任务信息;根据所述多个子任务的子任务信息,在注册数据库中确定用于处理各个子任务的目标业务单元的目标地址。3.根据权利要求1所述的方法,其特征在于,所述注册数据库还包括至少一个业务单元的处理资源信息,所述任务信息还包括处理资源需求信息,根据待处理任务的任务信息,在注册数据库中确定用于处理所述待处理任务的目标业务单元的目标地址,包括:根据待处理任务的任务类型和处理资源需求信息,以及至少一个业务单元的处理资源信息和功能信息,确定所述目标业务单元的目标地址。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取所述目标业务单元发送的待处理任务的结果对象,其中,所述结果对象是所述目标业务单元对所述处理结果进行序列化获得的;将所述结果对象进行反序列化,获得所述待处理任务的处理结果。5.根据权利要...

【专利技术属性】
技术研发人员:张义保贾永飞吴晓明吴佳飞叶建云冷冰徐慧敏王磊张广程
申请(专利权)人:上海商汤智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1