我正在寻找一个lib,允许我做寻找持久性计时器的Spring应用程序
- 定义将一次在一个特定的时间在未来被调用的工人(不需要再像featrure时间表/ cron的),即一个定时器
- 工人应接受该枝条一些参数/输入
- 所有应在DB(或文件)中的工人
- 工人应该由弹簧进行管理持久性的上下文 - - spring应该实例化worker,以便可以使用dependen注入资本投资者入境计划
- 能够通过API动态创建定时器并不仅仅是静态通过Spring XML豆
不错的:
- 支持集群,即有多个节点可以承载一个工人。每家商店在中jobn数据库将引起一个工作invokaction在点头的一个
我已经研究几个备选方案都不符合要求:
- 石英
时使用org.springframework.scheduling.quartz.JobDetailBean使石英创建您的工人实例(而不是春天),所以你不能得到依赖注射,(这将导致我使用服务定位器,我想避免)
while using org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean while you can not get a context。你的工人暴露使用MethodInvokingJobDetailFactoryBean中不能使用持久性时,不接受任何arguments.In另外一个公共方法(形成的Javadoc)
注:通过这个FactoryBean创建JobDetails不是序列,因此不适合持续工作商店。您需要将您自己的Quartz Job实现为每个需要持久作业委托给特定服务方法的情况的精简包装器。
- Spring的计时器和简单的JDK计时器不支持的持久性/集群功能
我知道我可以使用DB和Spring(甚至JDK)定时器IMPL的事情我自己,但我更喜欢使用一个3r党的lib。
有什么建议吗?
正是我需要的。谢谢 –