The present invention relates to a method for supporting dynamic management of timed tasks, which includes: obtaining annotations through reflection mechanism; parsing the annotations to obtain annotation information; creating instances and setting unique identifiers for instances based on the annotation information; and storing the instances and unique identifiers in corresponding containers. The invention also relates to a system, an electronic device and a storage medium supporting dynamic management of timed tasks.
【技术实现步骤摘要】
支持动态管理定时任务的方法、系统、设备和存储介质
本专利技术涉及计算机
,尤其涉及一种支持动态管理定时任务的方法、系统、设备和存储介质。
技术介绍
在企业软件中,有很多场景不需要人工介入,系统可自动完成,一般这种场景会通过定时任务解决。比如公司的报表系统会每天发出一份报表文件给公司的管理层查看公司运行情况,系统生成报表并发出这个动作,是不需要人工介入的,在某一个时刻,系统自动执行即可。这种自动执行的功能(定时任务)为worker,在大型的电商系统中,worker的数量会尤其多。针对定时任务的实现,现阶段有两种方案,其中一种为SPRING注解实现定时任务,另一种为配置文件实现定时任务。在软件的开发过程中,为减少开发成本,提高开发效率,通常会选择编写一个普通的POJO(简单的Java对象),然后在配置文件中通过反射创建worker的schedule、trigger、和job。随着worker数量的增加,配置文件中就会存在大量的schedule、trigger、job等配置信息。虽然开源框架SPRING提供了注解实现定时任务的功能,但是它没有对外暴露schedule、trigger、job等实例的实例ID,这就导致worker管理人员不能在系统运行过程中对worker执行schedule的start、stop或者对trigger触发等动态管理功能。SPRING注解实现定时任务是通过在系统启动时解析注解的属性创建定时任务,在系统启动完成后自动启动任务。但该技术方案存在以下问题:worker管理人员不能手动开启/关闭worker;不能在系统运行过程中对work ...
【技术保护点】
1.一种支持动态管理定时任务的方法,其特征在于,包括:通过反射机制获取注解;解析所述注解,获得注解信息;根据所述注解信息创建实例和设置实例的唯一标识;将所述实例和唯一标识存放在相应容器中。
【技术特征摘要】
1.一种支持动态管理定时任务的方法,其特征在于,包括:通过反射机制获取注解;解析所述注解,获得注解信息;根据所述注解信息创建实例和设置实例的唯一标识;将所述实例和唯一标识存放在相应容器中。2.根据权利要求1所述的方法,其特征在于,还包括:将实例ID封装在注解中,进而将所述实例ID设置为实例的唯一标识。3.根据权利要求2所述的方法,其特征在于,所述实例ID包括schedule实例ID、trigger实例ID、job实例ID,进而分别将schedule实例ID、trigger实例ID、job实例ID设置为schedule实例、trigger实例和job实例的唯一标识。4.根据权利要求1所述的方法,其特征在于,根据所述注解信息创建实例和设置实例的唯一标识包括:根据所述注解信息创建job实例,并且设置所述job实例的唯一标识;根据所述注解信息和所述job实例,创建trigger实例,并且设置所述trigger实例的唯一标识;根据所述注解信息和所述trigger实例,创建schedule实例,并且设置所述schedule实例的唯一标识。5.根据权利要求4所述的方法,其特征在于,还包括:创建job实例容器、trigger实例容器和schedule实例容器;将所述job实例和job实例的唯一标识存放在job实例容器中;将所述trigger实例和trigger实例的唯一标识存放在trigger实例容器中;将schedule实例和schedule实例的唯一标识存放在schedule实例容器。6.一种支持动态管理定时任务的系统,其特征在于,包括:获取模块,用于通过反射机制获取注解;解析模块,用于解析所述注解,获得注解信息;创建模块,用于根据所述注解信息创建实例和设置实例的唯一标识;存放模块,用于将所述实例和唯一标识存放在相应容器中。7.根据权利要求6所述的系统,其特征在于,...
【专利技术属性】
技术研发人员:李秀海,丁琼,周宁,
申请(专利权)人:北京京东尚科信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。