0

私は、顧客が「Web で」個々のワーカー プロセスを実行できるようにするサービスを構築しています。プロセスは非常に長時間実行されるように設計されており、約 1 分ごとに新しい注文が送られます (イベント ドリブン)。新しい注文がなく、すべての注文が処理された場合でも、プロセスは継続して実行されるようになっています。→お客様1人につき1工程。

次の「機能」が必要です。

  • 新しいプロセスを開始する
  • プロセスを終了します (オンデマンドで、決して自動的には行われません)
  • プロセス/ユーザーを追跡する
  • プロセスの新しい「注文」を受け取ります (顧客 ID でプロセスを識別します)
  • 顧客のプロセスが終了した場合 (例: 例外が発生した、誰かがサーバーを強制終了したなど)、注文を処理できない場合に顧客に通知します。

次の問題を解決できるパターンまたはベスト プラクティスを探してい ます 多くのサーバーでのプロセス管理 (スケーラビリティ) : 1 つのサーバーで 100 ~ 200 のプロセスが実行される場合があります。より多くの顧客を獲得した場合、どのサーバーでプロセスが実行されたかをどのように記憶できますか?

以前にこれらの問題に直面した人が他にもいると確信しており、これを行うには「正しい」方法と「間違った」方法があることは確かです。

4

1 に答える 1