DBに保存されているジョブ(タスク)に基づいてファイルを収集し、アーカイブファイルを作成する必要があるシナリオがあります。これらのジョブ(タスク)は、分散型。簡単にするために、私は次のように要約することができます:
- DBからスレッドのジョブを取得するアプリケーション(マルチスレッドアプリケーション)をホストするサーバー(たとえば、10台)がいくつかあります。
- ただし、同期のために(サーバー上の2つ以上のアプリケーションまたはスレッドがDBから同じジョブ(タスク)を取得することはできません)、これらのアプリケーションを各サーバーで個別に実行することはできません(何らかのマネージャープロセスが必要です)。
調査としていくつかの記事を探しましたが、見つけた記事のほとんどはマルチリーディングまたは分散プログラミングに関するものでした。私の問題でさえ分散プログラミングの問題のように見えますが、そうではないと思います。
ネット上や記事から解決策を探しているときに、「分散共有メモリ」、「分散オブジェクトコンピューティング」、「分散マルチスレッドチェックポインティング( http://dmtcp.sourceforge.net/)」という用語に出くわしました。
ただし、パスを選択する前に、このプログラミングの概念(マルチスレッドと分散コンピューティングの両方)の初心者なので、ここで、方法を提案する専門家にAPIを尋ねることにしました。 、デザインパターン、タスクを達成するために学ぶ必要のある概念。
よろしくお願いします。