2012-03-06 16 views
26

私はJava環境でCeleryプロジェクトと同等のものを見つけようとしていますが、私はSpring Batchを見てきましたが、分散タスクキューの方が優れています。PythonのCelery for Javaプロジェクトに相当するものは何ですか?

ありがとうございました。

+0

実際にはこれの複製です:https://stackoverflow.com/questions/9577012/whats-the-equivalent-of-pythons-celery-project-for-java(しかし、この房はこれまでより良い答えを持っています... ) – fnl

答えて

5

過去にクォーツが働いていました。これはTerracottaと統合されているので、配布が容易でなければなりません。 http://quartz-scheduler.org/

+2

特定のスケジュールでジョブを実行するのではなく、Quartzスケジューラでオンデマンドジョブを実行できますか? –

+0

@ZakiullahKhanMohamed私は非常に遅いですが、はい、可能です。すぐにジョブを実行するようにスケジュールすることができます。 – GuiSim

+1

ちょうどいいねえ:オープンソースの「フリー」バージョンは配布をサポートしていません。 Terracottaはエンタープライズ版ではないと主張しています。 –

3

セロリは、主にErlang/RabbitMQに基づいています。 RabbitMQにはJava client libraryが有益でしょう。また、octobotにはRabbitMQバックエンドがあります。

+0

もし私が間違っていないのであれば、CeleryはErlangではなくPythonで書かれています。私はRabbitMQがerlangベースであることに同意します。オクトボットを見て、ありがとう。 –

+1

私は彼がRabbitMQがErlangで書かれていることを意味すると思うので、それをインストールする必要があります。 – fabspro

8

Jesque(https://github.com/gresrun/jesque)はJava分散タスクキューライブラリです。それはGitHubのページに次のように説明されてResqueライブラリ(https://github.com/defunkt/resque)、のJavaのポートです:(「救助」のように発音)

Resqueはそれらを配置し、バックグラウンドジョブを作成するためのRedis担保ライブラリです複数のキュー上のジョブ、およびそれらを後で処理する「

0

私が見つけた最も近いものがOctobotです。しかしhttps://github.com/cscotta/Octobot ないので、多くのドキュメント... octobot.tacoで、それのためのウェブサイトがあるように使用。猫、しかし、最近私はその負荷を見ていない。私は個人的にOctobotを使用していないが、私はしばしばそれがJavaのためのセロリとして推奨されて見たことがあります。

20

セロリは、EIPSEDAと非常によく似ています...(DBと非同期のHTTPネットワークを追加するだけで、完全なエンタープライズ品質のスタックが得られます)。

  • 春::Javaで基本的に

    春の道、のJava EEの道、とのHadoop方法があり
    春の統合+スプリングバッチが+ RabbitMQの
  • のJava EE:ミュール+クォーツまたはEJBスケジュール+ HornetMQ
  • のHadoop:Capacity + ZooKeeperの

これらはおおよそセットアップの容易さの順です。

-2

のApache ActiveMQのhttp://activemq.apache.org/

Apacheのカフカhttp://kafka.apache.org/

+3

私はActiveMQとKaftaがセラーのようなワーカー/タスクキューだとは思わない。彼らはメッセージブローカーであり、あなたがそれを意味するならRabbitMQと比較することができます。 – Rupesh

0

私は、Javaのためのセロリとして使用するように簡単何かを見つけることができませんでした。ほとんどのソリューションでは、メッセージキューを使用することを推奨していました。しかし、セロリは待ち行列よりも高い抽象度を持っています。代わりに、メッセージと消費者の、あなたが仕事や労働者の観点から考えることができ、その結果、再試行など

私も、私はこのプロジェクトを始めたように、JavaとPythonの両方を使用して会社のためにいくつかの橋を実装するために必要な:

celery-java - JavaのCeleryクライアントとワーカーで、Pythonと互換性があります。

注意してください、それは今のところ未熟です。

関連する問題