web-dev-qa-db-ja.com

Apache + mod_wsgi対nginx + gunicorn

Djangoサイト(github上のオープンソースのedxコードです)をデプロイしたいと思います)。

私はどちらかを選択することに直面しています

  1. Mod_wsgiを使用したApache
  2. nginx with gunicorn

私はmod_wsgiでApacheを使用しましたが、それは十分に優れていますが、2番目のオプションの経験はありません。

速度とある程度の使いやすさの観点から、これらのうちどれがより良いオプションでしょうか?

注意:2つの異なるDjangoたとえば、ポート80と81でサイトを実行し、2つの異なるサブドメインからアクセスする必要があります。

27
T. Rex

Nginxgunicornと一緒に、本当に軽くて使いやすいソリューションですこれにより、任意のwsgiアプリケーションを実行し、簡単にスケーリングできます。 Nginxは、Apacheとは異なり、すべてのリクエストに対して新しいプロセスを生成しないため、リクエストの処理に優れています。

関連する質問のためにnginxでDjangoをデプロイする方法についての回答を書きました:

Deploying Django Gunicornおよびnginxを使用したプロジェクト

21
Pranjal Mittal

ええと、Nginxで得られる数ミリ秒は、他のプロセスにかかる時間に関して大きな違いはありません。 NginxはRAM=を節約する可能性がありますが、RAMが少ないサーバーでは大きな違いになります。大きなウェブサイトでの特定の用途では、さらに顕著な違いがあるかもしれませんが、これは専門家の問題になります。

ほとんどの本当の違いはおそらく学習のしやすさです。 Apacheは特に使いにくいとは思いませんし、ドキュメントはクリーンです。しかし、私が見つけたPythonチュートリアルのほとんどは、GunicornでNginxを使用することに関するものです。

Cginを改善するためにNginxも学びたい場合を除いて、Apacheを既に知っている場合は、Apacheを使用するほうがはるかに簡単です。

0
Thib

私はnginxとgunicornの経験が豊富です。私が最終的にすべての設定を正しく設定して実行した場合、彼らは素晴らしい仕事を続けます。

Nginxとgunicornの場合:

* nginx configuration files (/etc/nginx/sites-enabled/ and /etc/nginx/nginx.conf)
* gunicorn configuration files (/etc/init/gunicorn.conf and /etc/gunicorn.d/) 

私はApache + mod_wsgiのチュートリアルを見てきましたが、設定はとても簡単に思えます。

0
Jdruiter