この新しいNGINX+ZeroMQプロジェクトがgithubに表示され、混乱しています。
Mongrel2とNGINX+ZeroMQの機能とスケーラビリティの違いは何ですか。
(私が尋ねる理由は、NGINXがZeroMQをサポートしていなかったためにMongrel2が単独で作成されたという印象を受けているためです)
この新しいNGINX+ZeroMQプロジェクトがgithubに表示され、混乱しています。
Mongrel2とNGINX+ZeroMQの機能とスケーラビリティの違いは何ですか。
(私が尋ねる理由は、NGINXがZeroMQをサポートしていなかったためにMongrel2が単独で作成されたという印象を受けているためです)
nginx + zeromqモジュールについても読んだところ、すぐにかなりの違いに気づきました。
ZeroMQ nginxモジュールは、REQ/REPソケットを使用してバックエンドプロセスと通信します。一方、mongrel2は2つのソケットを使用します。1つのPUSH/PULLは(ハンドラーに)メッセージをダウンストリームに送信し、もう1つは(ハンドラーからの応答を受信するために)PUB/SUBを送信します。これにより、完全に非同期になります。mongrel2がバックエンドハンドラーに要求を送信すると、zmq_send()呼び出しからすぐに戻り、応答は後でいつでも別のソケットで受信されます。
もう1つの違いは、mongrel2が複数のクライアントに同じ応答を送信できることです。ハンドラーはmongrel2に次のように伝えることができます:「この応答を接続4、5、6、および10に配信してください」。Mongrel2は、メッセージ内の接続IDをハンドラーに送信します。
お役に立てれば!=)