最終更新:ID:EzcUQiuEAA 2010年10月21日(木) 17:59:00履歴
Nginx is a lightweight, high performance web server/reverse proxy and e-mail (IMAP/POP3) proxy.(公式サイトより引用)
Nginxは軽量かつ高性能なWebサーバ/リバースプロキシサーバ/メールプロキシサーバです。
Nginxは従来のWebサーバと異なり、リクエストを処理するのにスレッドを用いません。
スレッドを用いず、非同期のアーキテクチャーを用いています。
Nginxの最大の特徴というのが、従来のプロセス/スレッドを用いたリクエスト処理機能を用いず
同時接続数の制限を限りなく大きくした・・・ということみたいです。
これが何を意味するのか・・・おそらくC10K問題に対応していると言いたいのでしょう。
C10K問題はこちら→TheC10kProblem
上記サイトはC10K問題と対応を説明していますが、対応はWebサーバを作る人向けの内容なのでかなり難しいです。
C10K問題を一言で言ってしまうと、長いKeepAliveするアクセスが大量に来たとき、従来のプロセス/スレッドを用いた
アーキテクチャー(Apacheのprefork版やWorker版のこと)では同時に多くのクライアントに対して
処理を行えないということでしょう。
Nginxは、従来とは違うアーキテクチャーなので大丈夫ですよーってことですね。
また、プロセス/スレッドを多く生成しなくて済むのでメモリ使用量が従来のWebサーバと比べて少なくなります。
このあたりがNginxを使うメリットです。
コメントをかく