2

私はuwsgiが初めてで、それがどのように機能するかを理解しようとしています。

uwsgiでは、2つのセットアップがあると言います

1)

uwsgi --socket /tmp/uwsgi.sock --socket 127.0.0.1:8000 --master --process 2 --workers 1

これは、ポート 8000 をリッスンする 3 つのスレッドを持つ 2 つの子プロセスを持つ単一の uwsgi プロセスです。

2)

uwsgi --socket /tmp/uwsgi.sock --socket 127.0.0.1:8000 --master --process 2 --workers 3
uwsgi --socket /tmp/uwsgi2.sock --socket 127.0.0.1:8001 --master --process 2 --workers 3

同様に、ポート 8000 と 8001 をリッスンする 2 つの uwsgi プロセス

疑い 1 : uwsgi プロセスを (2) のように実行するように構成し、それらを nginx で構成することはできますか?

疑問 2 : nginx はいつリクエストを負荷分散しますか (a) 複数のポートをリッスンする複数の uwsgi プロセスがある場合 (b) 複数の子プロセスを持つ単一の uwsgi プロセスがある場合

(a) と (b) のどちらが優れているか、それとも nginx を使用して uwsgi プロセスの負荷を分散する正しい方法ではないでしょうか?

4

1 に答える 1

2

最初のアプローチはより健全で、nginx がすでにビジー状態のワーカーにリクエストを渡すことを回避します。

雷鳴の群れの問題に関するいくつかのブログ投稿またはドキュメントを見つけることができます。これを読むことをお勧めします

基本的に、非常に具体的なニーズ (および制限) がない限り、最初のアプローチが適しています。

于 2013-08-09T06:57:04.063 に答える