WEBサーバーソフトで拡大する「NGINX」とはなにか

サイト運営費捻出のため広告を使用しています

利用者がWEBブラウザでURLなどを指定してアクセスすると、情報を取得してウェブブラウザに返してくれるのがWEBサーバーソフトです。従来はオープンソースソフトウエアのApacheがかなりのシェアを誇っていました。

ところが最近になって、「Nginx」というWEBサーバーソフトの名前をよく聞くようになってきました。日本市場におけるNGINXのシェアは2019年2月時点で30%にも達しているということですので、かなりの速度で拡大しているのではないかと思います。今後、1年から1年半程度でApacheのシェアを抜くのではないかという予測もあります。

また、別の調査ではアクティブWebサイトの上位1000のうち、41%はNginxで動いているという調査結果もあるようです。

なぜ、Nginxがここまで人気が出ているかというと、Apacheと比較して動作が軽くて、大量のリクエストに対応できる実力を持っていることにあります。もともとNginxが開発されたのも、Apacheの処理能力に不満があったため開発された経緯があるそうです。

ApacheとNginxの大きなアーキテクチャーの違いは、メモリの割り当て方の考え方が異なる点です。Apacheは一つのHTTPリクエストに対して一つのプロセスを割り当てるのに対して、NginxはCPUのコア数と同じだけのプロセスしか立ち上げずに、キューに溜まったリクエストを順番にプロセスに割り当てて処理する仕組みになっています。Apacheのようにプロセスをたくさん立ち上げてしまうと、それぞれがメモリを確保してメモリ不足などスローダウンにつながるような要因を持ち合わせているのに対して、Nginxはプロセス数が常に一定なので消費メモリー量を抑えることができることが大きな利点になっています。

こちらを公開しているのは、さくらインターネットのレンタルサーバーになりますが、現在は「Apache/2.4.38」が利用されていることがコントロールパネルから確認できました。ただ、レンタルサーバーでもNginxを搭載しているところが出てきているようなので、今後機会があれば、NginxをWebサーバーとして使っているところで、どんな使い勝手なのかを確認してみたいと思っています。

コメント