搜索通用异步Java作业执行框架/库

我正在寻找一个可以处理Callables或Runnables的通用异步Java作业执行框架.它类似于java.util.concurrent.ExecutorService(并且可能包装ExecutorService),但它也具有以下功能

>能够在作业服务期间应用程序停机时将作业持久保存到数据库,并能够重新启动未完成的作业. (我知道我的工作可能必须实现Serializable,这是好的.)
>使用UUID使客户端能够获取作业令牌并查询作业状态. (在引擎盖下,此信息也将持久保存到数据库中.)

我已经开始围绕ExecutorService开始研究这个问题,但我更喜欢开箱即用的开源解决方案,如果存在的话.

可以在Spring Framework中运行的东西是理想的.

最佳答案
您可以使用Quartz,并创建一个委托给Runnable或Callable的具体Job适配器. Quartz的Job接口增加了在任务调用之间维护某些状态的能力.如果需要,Quartz可以将作业及其状态持久存储在关系数据库中,并在可扩展的主机群集上执行它们.

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...