Nginx

abe

この記事は1年以上前に書かれたもので、内容が古い可能性がありますのでご注意ください。

web サーバソフトウェアで一番有名なものとして Apache HTTP Server がありますが、 Nginx というソフトウェアが最近じわじわとシェアを伸ばしてきています。 (シェアの推移 NETCRAFT)
また、 Nginx は web サーバとしての機能の他にも、 web プロキシや メールプロキシとしての機能も持っています。

web サーバとしての機能については、 apache (prefork) と比べてはるかにリソースの消費を抑えているにも関わらず、高いパフォーマンスを発揮できる点が特徴的です。
apache は多機能で柔軟性が高い良いソフトウェアですが、その分リソース面では自分の環境や用途に合わせて細かく設定してやらないとなかなかリソース消費を抑えることができません。その点 Nginx では、クライアントからの接続を処理する際のアプローチから apache とは異なっているため、細かい設定をしなくてもかなりリソース消費を抑えることができます。
また、クライアントの接続数が増えてもプロセスやスレッドを増やさないため、C10K 問題 (はてなキーワード) に悩まされることもありません。 (といっても個人で運用する分にはそうそう遭遇しない問題でしょうが。)
ただ、接続数が一定数を超えないといまいち性能を発揮しきれない場合もあるようですが、リソースの乏しいマシンで web サーバをたてたいときには非常に有用かと思います。

Nginx をリバースプロキシ + 静的コンテンツ処理用に使い、動的なコンテンツは apache に処理させる、といった使い方もあるようです。

今後もし web サーバを新しく構築する機会がありましたら、 Nginx も選択肢のひとつに入れることを個人的にはお勧めします。

担当:阿部 (もちろん面倒事もある)

  • このエントリーをはてなブックマークに追加

Comments are closed.