什么相当于Python的Celery Java项目?

我试图为Java环境找到一个Celery项目的等效物,我已经看过Spring Batch,但是对于分布式任务队列,有没有更好的替代方案。

谢谢。


答案 1

Celery正在做的事情非常类似于EIP,以及具有方便任务调度的SEDA...(您所要做的就是添加一些数据库和异步HTTP网络,并且您已经拥有了一个完整的企业质量堆栈)。

基本上在Java中有Spring way,Java EE方式和Hadoop方式:

  • 春天:弹簧集成 + 弹簧批次 + 兔子MQ
  • Java EE:骡子 + 石英或 EJB 调度 + 大黄蜂MQ
  • Hadoop: Capacity + ZooKeeper

这些大致是按照易于设置的顺序排列的。


答案 2

Jesque(https://github.com/gresrun/jesque)是一个Java分布式任务队列库。它是Resque库(https://github.com/defunkt/resque)的Java端口,在其GitHub页面上描述如下:

Resque(发音像“rescue”)是一个由Redis支持的库,用于创建后台作业,将这些作业放在多个队列上,并在以后处理它们。