2011-01-01 2 views
0

私は(私が広く使用されるものが最も安定していると仮定)オプションが(脇のパフォーマンスを残して)より安定で、より広く使用されているだろう:最も広く使用されているPythonのWebアプリケーションの配備スタイル

  • アパッチ - >このプロジェクトのために> mod_proxy_http

ます - mod_wsgiを

  • のapache - > mod_fcgid
  • のapache - > mod_proxy_ajp
  • アパッチ小さなjson形式の入出力メッセージとWebページ(最大100 req/s)でRESTサービスを提供します。あなたがnginxなどがより適していると思うなら、apacheにコメントしてください。

    ありがとうございました。

  • +0

    最も広く使用されているのがまだcgi-binであれば驚くことはありません。広く使われてもそれが最高にはなりません。 (私はそれが安定していると思う) –

    答えて

    0

    100 req/sは最近達成するのが難しくありません。

    フレームワークで推奨されている展開を検討してください。たとえばZopeにはまともなWebサーバーが組み込まれているので、mod_proxy_httpは良い展開です。

    wsgiが実現して以来、多くのフレームワークにとって好ましい仕組みになっており、組み込みのWebサーバーは開発にのみ適しています。

    今のところ展開するものに関係なく、必要に応じてスタックの一部を切り替える/追加できることが重要です。静的コンテンツのリバースプロキシをどこにしたいですか?あなたがmemcachedからの静的なコンテンツをかなりうまく扱うことができるので、nginxを使用する場合、必要ないかもしれません。

    要約:使用するwsgi

    +0

    はい私はそれにもapacheを使うことができると思っていました。 wsgiについては、mod_wsgiまたはfcgiとflupを使って直接お勧めしますか?私はまさにその理由を知っていませんが、mod_wsgiがあまり成熟していないような気がしました。私は完全に間違っている可能性がある。 – mete

    +0

    @mete、mod_wsgiは一度に_ _少なくとも_数ヶ月間うまく動作します。私はそれを使用して何か問題を発見していない。あなたが正しく動作しない特定のタイプのコンテンツを見つけたら、いつもapacheを使ってURLを別のハンドラ –

    +0

    @meteに書き直すことができます。新しい開発のためには、flupを使うのは意味がありません。既存のフレームワーク(Django、web2py、pylonsなど)のいずれかでシステムを構築してください。 –

    1

    apache - >mod-wsgiは、現在、 "推奨されている"解決策です。しかし、それはあなたのニーズにもかなり依存します。

    1つの重いアプリケーションと1つの軽いアプリケーションまたは多くの軽いアプリケーションの実行にはかなりの違いがあります。

    個人的に私の好みの設定は、重いサイト用の複数のApacheサーバーを使用して、まだnginx - >apache - >mod_wsgiです。

    +0

    答えをありがとう。どのようなnginxは、Apacheの前に何ですか?静的ファイルの場合? – mete

    +0

    @mete、nginxは基本的なロードバランシングを行うことができます –

    +0

    @mete:単純なロードバランシング、フェイルオーバーおよび静的ファイル。 – Wolph

    関連する問題