12

開発にはローカルの LAMP スタックを使用し、本番環境ではMediaTemple の Django コンテナーを使用しています(BTW が大好きです)。MT のコンテナーは lighthttpd を使用します。正直なところ、私はそれ以外の経験をしたことがありません。私はずっとApacheを使ってきました。私はいくつかの読書をしてきました:

質問は次のとおりです。

  • ある人が他の人よりも優れている点は何ですか?
  • 開発環境で lighthttpd を使用するメリットはありますか?
  • 両方使ってどうするの?Linux.com の記事では、 Apacheで lighttpd使用する方法について説明しています。
4

5 に答える 5

4

純粋に静的な Web ページ (.gif、.css など) で、個別の IP アドレスから n 個の http 要求がある場合: 1. Apache: n 個のプロセスを実行します (メモリ内の mod_perl、mod_php を使用) 2. lighttpd: 1 個のプロセスと 1 個のスレッドを実行します (起動する前に m 個のスレッドを割り当てることができます)

個別の IP アドレスからの n 個の http リクエストを持つ純粋に動的な Web ページ (.php、.pl) の場合: 1. Apache: n 個のプロセスを実行します (メモリ内の mod_perl、mod_php を使用) 2. lighttpd: 非同期 I/O により 1 つの lighttpd プロセスを実行します、およびスクリプト言語ごとに m 個の fast-cgi プロセスを実行します。

Lighttpd は、はるかに少ないメモリを消費します。Google に買収されるまで、YouTube は lighttpd の大ユーザーでした。詳細については、そのホームページにアクセスしてください。

PS私の前の会社では、両方をロードバランサーと一緒に使用して、URLサフィックスに従ってhttpトラフィックを分散していました。完全に lighttpd にしないのはなぜですか? レガシー上の理由から。

于 2008-10-09T01:10:50.163 に答える
4

両方の利点: Apache はより強力で拡張性が高く (その能力が必要ない場合は役に立ちませんが、いずれにせよ...)、静的コンテンツでは lighttpd の方が高速です。アイデアは、サイトを静的コンテンツ (css、js、画像など) と Apache を介して流れる動的コードに分割することです。

lighttpd だけで多くのことができないと言っているのではありません。あなたも人もそうします。

実稼働サーバーでのみ lighttpd を使用している場合は、開発サーバーとステージング サーバーでそれをミラーリングすることを真剣に検討します。これにより、展開する前に何が期待できるかを正確に知ることができます。

于 2008-10-05T15:55:05.043 に答える
3

Web サーバーと Django の間のインターフェイス方法は、Web サーバー ソフトウェアの選択よりもパフォーマンスに大きな影響を与える可能性があります。たとえば、mod_python は RAM を大量に消費することが知られています。

この質問とその回答では、他の Web サーバー オプションについても説明しています。

クライアント ソフトウェアとの互換性の問題については気にしません ( MarkR のコメントを参照してください)。lighttpd と FastCGI を使用して Django を提供する場合、このような問題はありませんでした。私は、サーバー ソフトウェアとクライアント ソフトウェアの両方の多様なエコシステムを見たいと思っています。優れた標準を持つことは、単一ベンダーの事実上の製品よりも優れています。

于 2008-10-06T08:08:48.463 に答える
0

答えは、プロジェクトの目標によって異なります。アップタイムが重要で負荷が高い大規模なサイトになる場合は、lighttpd を使用します。驚くほどスケールします。唯一の欠点は、最初にもっと手を加える必要があることです。ほとんどのホストはこれをサポートしていないため、lighttpd で何をしているのかを知ることは本当に有益です。

月に数千人の訪問者を獲得する母親向けのサイトであれば、apache の方が適しています。彼女は新しいホストに簡単に移動できるようになり、サポートも見つけやすくなります。

于 2008-10-06T04:45:25.940 に答える
-5

標準の Web サーバーを使用します。Apache は 50% の Web サイト ( Netcraft ) で使用されているため、Apache を使用する場合、人々の Web ブラウザ、スパイダー、プロキシなどは、サイト (Web サーバーはともかく) で動作することがほぼ保証されます。

Lighthttpd は 1.5% の Web サイト ( Netcraft ) で使用されているため、アプリケーションをそれでテストする人はほとんどいません。

本番環境では、パフォーマンスの違いは問題にならない可能性があります。Apache サーバーはおそらく、本番環境で展開する可能性が高い最も遅いハードウェアで、実際よりもはるかに高い帯域幅で静的要求を処理できます。

于 2008-10-05T16:03:39.583 に答える