4

現在、pub-subパターンでzeromqを使用しています。公開する単一のワーカーと、同じパターンに多数の(8)サブスクライバー(すべてサブスクライブします)があります。

今、マルチプロセッシングを試して、サブスクライバーを生成しました。いくつかのメッセージが欠落しています。

私がマルチプロセッシングを使用している理由は、各メッセージが到着したときにそれを処理して処理するためです。パブリッシャーは 1 秒ごとに 10 ~ 100 のメッセージを発行します。

この場合、multiprocessingまたはgevent?を使用することをお勧めします。

4

2 に答える 2

4

マルチプロセッシングのメモリ オーバーヘッドは明らかにはるかに高くなりますが、別のコアを使用するため (プリエンプションの不足を心配する必要はありません)、必要に応じて異なります。gevent を使用する複数のプロセスにより、最高のスループットと最低のレイテンシが得られる可能性があります。

于 2012-04-03T21:51:17.013 に答える
4

私は自分の質問に答えています

geventよりもマルチプロセッシングを選択します

  1. サーバーには 8 コアがありました
  2. 並列処理が必要でした
  3. マルチプロセッシング キューまたは gevent キューよりも ZMQ を選択します。
于 2012-04-18T09:10:51.740 に答える