nginx(エンジンエックス)Tech Basics/Keyword

「WebサーバソフトウェアといえばApache」とは限らない。オープンソースソフトウェアの「nginx」もオンプレミス/クラウドを問わず、よく見掛けるようになった。その特長は?

» 2016年09月08日 05時00分 公開
[島田広道デジタルアドバンテージ]
「Tech Basics/Keyword」のインデックス

連載目次

 「nginx(エンジンエックス)」とは、オープンソースのWebサーバソフトウェアの1つである。より少ないリソースで大量のリクエストを処理可能なスケーラビリティと、豊富なプロキシ機能が主な特長とされる。Igor Sysoev氏によって開発され、現在はNGINX社によって開発が続いている(Sysoev氏は同社の創業者の一人)。

Apacheに迫る勢いでシェアを拡大しているnginx

 Webサーバソフトウェアで最大勢力の「Apache」に対し、nginxのシェアは次第に迫ってきている。調査サービスW3Techsによれば、2016年7月時点でApacheの51.8%に対し、2位のnginxは30.8%とのことだ。2010年の3.9%から順調にシェアを拡大している。

 シェアの調査結果からは、負荷の高いWebサイトではApacheよりnginxの採用が多いことも挙げられる。これはnginxの特長の1つであるスケーラビリティの高さが反映されている、といってよいだろう。

スケーラビリティを重視するnginx

 nginxでは、クライアントからの同時かつ大量のリクエストを、より少ない台数のサーバでさばけるように設計されている。

 具体的には「イベント駆動」や「非同期処理」「ノンブロッキングI/O」といった処理効率を高めるための技術がアーキテクチャ*1に組み入れられている。またプロセス数を抑えることで、コンテキストスイッチングによるオーバーヘッドを減らしている。

*1 nginxのアーキテクチャの詳細は、「The Architecture of Open Source Applications」[英語]が詳しい。

プロキシ機能が豊富なnginx

 さまざまなプロキシの機能を持っていることも、nginxの特長の1つだ。代表的なのはリバースプロキシで、負荷分散(ロードバランサー)やSSL(TLS)の集約、複数のWebアプリケーションの統合といった用途によく利用されている。むしろWebサーバではなく、リバースプロキシとしてnginxが採用されることも珍しくない。

リバースプロキシとしてのnginxの例 リバースプロキシとしてのnginxの例

 またメールサーバのプロキシも可能だ。例えばSMTP/POP/IMAPというメールプロトコルの要求をnginxが受け付けつつ、バックエンドのメールサーバに中継できる。さらにはTCP/UDPレベルの汎用的なプロキシ機能も装備している。

機能拡張モジュールの豊富なnginx

 nginxでは、「モジュール」と呼ばれるソフトウェアのパッケージで各機能が実装されている(前述のメールプロキシもプロトコルごとにモジュール化されている)。標準で多数のモジュールが用意されている他、サードパーティー製の各種モジュール(その多くはオープンソース)もたくさん提供されていて、nginxをさまざまな用途に活用するのに役立っている。

Webサーバとしてのnginx

 もちろんnginxは、現在のWebサーバに必要な機能を実装済みだ。比較的新しい仕様や規格もサポートされている。

機能名 特長
キャッシュ FastCGIやmemcachedなどのサーバもサポート
プロトコルのサポート HTTP/2やWebSocketにも対応
SSL(TLS) SNI(Server Name Indication)にも対応
URL Rewrite 正規表現で判定・書き替え可能
アクセス制御 ベーシック認証やソースIPアドレスなどでブロック可能
バーチャルサーバ 単一のサーバで複数のサイトを運用できる(ドメイン名やIPアドレスで振り分け可能)
Webサーバとしてのnginxの主要な機能

Linux/UNIX系OSで利用可能。クラウドサービスでもサポートが広がる

 nginxは、LinuxやFreeBSD、Mac OS X、その他のUNIX系OS上で実行できる。Windowsプラットフォームにも移植されているが、パフォーマンスやスケーラビリティを期待すべきではないとのことだ。

 レンタルサーバについては、少なくとも国内ではApacheの採用が多く、nginxはなかなか見掛けない。

 一方クラウドサービスでは、nginxをプリインストールした仮想マシンのイメージをラインアップしていることが珍しくない。他にも、AWSのアプリケーション展開・管理サービス「Elastic Beanstalk」では、プロキシサーバとしてnginxを標準でサポートしている。

商用版もある

 オープンソース版のnginxに対して、より高機能でテクニカルサポートも受けられる「NGINX Plus」という商用版も提供されている。

「Tech Basics/Keyword」のインデックス

Tech Basics/Keyword

鬯ゥ謳セ�ス�オ�ス�ス�ス�コ鬯ョ�ヲ�ス�ョ髯キ�サ�ス�サ�ス�ス�ス�ソ�ス�ス�ス�ス鬯ッ�ッ�ス�ィ�ス�ス�ス�セ�ス�ス�ス�ス�ス�ス�ス�」鬯ッ�ョ�ス�エ髣費ソス�ス�・�ス�ス�ス�ウ�ス�ス�ス�ィ�ス�ス�ス�ス髯懶ス」�ス�、�ス�ス�ス�ク�ス�ス�ス�イ鬯ゥ蠅捺��ス�ソ�ス�ス�ス縺、ツ€�ス�ス�ス�ス�ス�ス�ス�」鬯ッ�ョ�ス�エ鬯ゥ蟶壽桶�ス�ュ鬮ョ�」�ス�ソ�ス�ス�ス�ス�ス�ィ鬮ッ蛹コ�サ繧托スス�ソ�ス�ス�ス�ス�ス�ス�ス�ス�ス�コ鬮」蛹�スス�オ髫エ謫セ�ス�エ�ス�ス隶難ス」�守「托スュ雜」�ス�「�ス�ス�ス�ス�ス�ス�ス�ゥ鬯ゥ蟷「�ス�「髫エ雜」�ス�「�ス�ス�ス�ス�ス�ス�ス�シ鬯ゥ蟷「�ス�「髫エ荳サ�ス隶捺サゑスソ�ス邵コ�、�つ€鬯ッ�ョ�ス�ヲ�ス�ス�ス�ェ鬩包スカ闔ィ�ス�ス�ヲ�ス�エ�ス縺、ツ€髯キ闌ィ�ス�キ�ス�ス�ス�ス�ス�ス�ス�サ鬯ッ�ッ�ス�ェ�ス�ス�ス�ュ�ス�ス�ス�ス�ス�ス�ス�イ鬯ゥ謳セ�ス�オ�ス�ス�ス�コ鬮ッ�キ�ス�キ�ス�ス�ス�カ�ス�ス�ス�ス�ス�ス�ス�ス New

Copyright© Digital Advantage Corp. All Rights Reserved.

スポンサーからのお知らせPR

Windows Server Insider 鬯ッ�ョ�ス�ォ�ス�ス�ス�ェ鬮ッ蛹コ�サ繧托スス�ソ�ス�ス�ス�ス�ス�ス�ス�ス�ス�コ鬮」蛹�スス�オ髫エ竏オ�コ�キ�ス�ク�ス�キ�ス�ス�ス�ケ髫エ雜」�ス�「�ス�ス�ス�ス�ス�ス�ス�ウ鬯ゥ蟷「�ス�「�ス�ス�ス�ァ�ス�ス�ス�ス�ス�ス�ス�ュ鬯ゥ蟷「�ス�「髫エ雜」�ス�「�ス�ス�ス�ス�ス�ス�ス�ウ鬯ゥ蟷「�ス�「�ス�ス�ス�ァ�ス�ス�ス�ス�ス�ス�ス�ー

鬯ョ�ォ�ス�エ髯晢スキ�ス�「�ス�ス�ス�ス�ス�ス�ス�ャ鬯ョ�ォ�ス�エ鬯イ�ス�シ螟イ�ス�ス�ス�ス�ス�ス�ス�・鬯ョ�ォ�ス�エ髯晢スカ�ス�キ�ス�ス�ス�」�ス�ス�ス�ッ鬮」蜴�スス�ォ�ス�ス�ス�」

注目のテーマ

4AI by @IT - AIを作り、動かし、守り、生かす
Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。