2012-06-26 11 views
22

Djangoプロジェクトのいくつかについて、本番ではnginx + fastcgi(manage.py runfcgi ...)を使用しています。多くの人がnginx + gunicornを使用することを提案しています。 Djangoのfastcgiサーバーを使用する代わりにgunicornを使用する利点は何ですか?Djangoのfastcgiサーバを使用することの短所は何ですか

+0

また、uwsgiをご覧ください。 –

+1

FastCGIバージョン1.7から非推奨:FastCGIのサポートは廃止され、Django 1.9で削除される予定ですので、uWSGIをお勧めします。 – ashish

答えて

28

あなたはWSGIのようなサーバを使用する必要がなぜ私だけ教えてくれよ:)しかし、あなたはFCGIを使用して快適に感じる場合 - ちょうど

に短い答えを、それを使用しますので、its native

(プロトコルなど)WSGIはクールです

または「あなたがもっと深く進む必要がある」(c)

次の質問「FastCGIとWSGIのようなサーバー」

ここにいくつかの答え:gunicorn、uWSGIとチェロキー、nginxの約

。それらを混ぜるな!

nginxは、HTTPリクエストを処理してWSGIバックエンドに送信できるWebサーバーです。 (しかし、静的なコンテンツ処理のためには、とりわけ極端に高速です。) WSGIバックエンドはdjangoアプリケーションを処理します。

チェロキーについて、私はそれがnginxと同じタスクを処理すると思いますが、私はそれで動作しません。

そしてgunicorn、uWSGIはなるほどmany other tasks

とをDjangoのアプリでスレッドを実行してくださいWSGIバックエンド、gunicorn say

ことを、ユニコーンが強くのみUnixライクなプラットフォーム上で動作するサーバーされていますあることをしてうまくやっている(うまくいけば)というUnixの哲学に結びついています。 HTTPを使用しているにもかかわらず、unicornは厳密にはRackベースのRubyアプリケーションを実行するためのバックエンドアプリケーションサーバーです。私は私のジャンゴのために練習し

は+(Debianの厩舎から)uWSGI(nginx.orgリポジトリから最新の安定)のnginxをアプリ - 完璧に動作します:)


は18.05を編集しました。fcgi gunicorn uWSGI

FCGI(ねじ)640 R/S

FCGI(preforkの4つのプロセッサ)240 R/S(*)

gunicornを比較すると2010トピック2012

リンク(2作業員)1100 R/S

gunicorn(5人の労働者)1300 R/S

gunicorn(10 WO rkers)1200 R/S(?!?)

uwsgi(2人の労働者)1800 R/S

uwsgi(5人の労働者)2100 R/S

uwsgi(10人の労働者)2300 R/S

(*これは時に屋根を介してCPUとしての私のコンピュータは非常に低迷製)

+7

「FastCGIとWSGI」は間違った質問です。 FastCGIはネットワークプロトコルであり、WSGIはPython呼び出し規約です。 [flup](http://trac.saddi.com/flup)にはFastCGI-to-WSGIゲートウェイがあります。 Djangoの 'runfcgi'コマンドは実際にはflupに基づいているため、WSGIを使用します。 より良い質問は、flup対uwsgiまたはflup対gunicornです。 –

+0

「FastCGIとWSGI」についてはあなたが正しいです。 WSGIのようなトピックの変更。そして、私は戦闘の「フラップVSウルシギ対ガンコニック」がUWSGIに勝つと思う。私はすぐにいくつかの証明を提供しようとします。 – nk9

+3

あなたの基準は何かによって決まります。 uwsgiはdebian squeeze(現在の安定版)にはパッケージ化されていませんが、 、flupとgunicornはそうです。 –

4

B1-が言うように、WSGIは(this postを見てみましょう)ネイティブです。

また、this postも同様の質問があります。

私の個人的な見地からは、以前は私がNginx + uwsg in vhost modeを使って私のサーバー上でさまざまなプロジェクトを実行してきました。

+0

...そしてuWSGIには、zergモードがあります^ _ ^ – nk9

関連する問題