私は、メッセージング キューを使用して、分散プロデューサー/コンシューマー システムに取り組んでいます。私が並列化に興味を持っているのは消費者側であり、私はそのために持っているものに満足しています.
しかし、プロデューサーについてはどうすればよいかわかりません。システムのプロデュース部分の負荷はそれほど高くないので、一度に実行する必要があるのは 1 つのプロデューサだけですが、起動、停止、再起動、および主に監視など、信頼できる管理方法が必要です。プロデューサー ホストが失敗した場合、別のホストがピックアップできます。
それが役立つなら、ジョブをキューに入れるコンシューマ アルゴリズムに満足しています。これは、一定期間ダウンして、ダウン中に発生したものを取得する耐障害性があるためです。
これを行うためのツールまたは少なくとも既知のパターンがあり、車輪を再発明しないと確信しています。
私はrabbitmqを使用していますが、activemqを使用したり、必要に応じてストームなどにリファクタリングしたりすることもできます.私のコードは今のところ複雑ではありません.