5

We have a cluster with 2 JBOSS nodes. We have a batch job which loads all users details from a active directory to a DB. This job is run everyday. It was run before in a non clustered environment and hence we designed it as a singleton. Now we have a clustered environment and I do not know what is best way to achieve the same result. I want batch job to be run only once a day. We use spring and hibernate and I looked at Spring batch. I could not get any concise answer to my question.

Can anybody please let me know if you had implemented batch in cluster environment? What would be the best solution in this scenario?

4

3 に答える 3

6

MQ を介して外部からジョブをトリガーおよび開始することでこれを実装しました (ジョブを開始するための http 要求も同様に機能します)。スケジューラーはキューにメッセージを入れます。キューをリッスンしている「n」個のノードがある場合でも、1 つのノードがメッセージを受信し、その内容に基づいてジョブを開始します。これは HTTP でも行うことができます。

これに対する本当の「解決策」は、内部の cron トリガーを介さずに、バッチ ジョブを「外部的に」スケジュールすることです。実際の開始メカニズムはそれに次ぐものです。

于 2012-02-26T16:22:21.573 に答える