2016-01-02 22 views
15

私はNginxの背後にあるuWSGIを実行していて、proxy_passを使用して、NginxがuWSGIに衝突するようにしています。 uwsgi_passに切り替えることの利点はありますか?もしそうなら、それは何ですか?Nginxのuwsgi_passとproxy_passの違いは?

+0

[uwsgiプロトコルはhttpプロトコルより高速ですか?](http://stackoverflow.com/questions/11783907/is-uwsgi-protocol-faster-than-http-protocol) – GwynBleidD

答えて

23

uwsgi_passは、uwsgiプロトコルを使用します。 proxy_passは、通常のHTTPを使用してuWSGIサーバーと通信します。 uWSGIドキュメントは、このプロトコルがより優れていて、速く、uWSGIのすべての特別な機能の恩恵を受けることができると主張しています。

実際のメリットはありますか?はい。 uWSGIには、送信するデータのタイプと、応答を生成するためにuWSGIプラグインを呼び出す必要がある情報をuWSGIに送信できます。 http(proxy_pass)であなたはそれを取得しません。その詳細はuWSGI docsにあります。

しかし、あなたのためにhttpの代わりにuwsgiプロトコルを使用することの利点が文書化されていない場合でも、uwsgiがuWSGIサーバーの主なプロトコルであり、ここでうまく適合しているので、できるならばuwsgiプロトコルを使用する必要があります。

uwsgiプロトコルを使用する場合は、uWSGI起動スクリプトのhttp-socketパラメータをsocketに変更する必要があります。

関連する問題