NGINXとは
NGINXは、Web配信、リバースプロキシ、キャッシュ、負荷分散、メディアストリーミングなどに対応するオープンソースソフトウェアです。当初は、最大限のパフォーマンスと安定性を実現するWebサーバーとして開発されました。HTTPサーバー機能に加え、メール(IMAP、POP3、SMTP)用のプロキシサーバーとして、またHTTP、TCP、UDPサーバー用のリバースプロキシおよびロードバランサーとしても機能します。
背景
Igor SysoevがNGINXを開発した当初の目的は、C10K問題を解決することでした。これは、既存のWebサーバーが多数(10K)の同時接続(C)を処理する際に直面していた課題を表すため、1999年に生まれた用語です。イベント駆動型の非同期アーキテクチャを採用したNGINXは、高パフォーマンスが求められる環境におけるサーバーの運用方法に革命をもたらし、当時最速のWebサーバーとなりました。
2004年にプロジェクトをオープンソース化し、その利用が飛躍的に拡大するのを見届けたSysoevは、NGINXの継続的な開発を支援するとともに、NGINX Plusをエンタープライズのお客さま向けに設計された追加機能を備える商用製品として提供するため、NGINX, Inc.を共同設立しました。NGINX, Inc.は2019年にF5, Inc.の一員となりました。現在、NGINXとNGINX Plusは数十万件の同時接続を処理でき、インターネット上で最もアクセスの多いサイトのうち、他のどのサーバーよりも多くを支えています。
WebサーバーとしてのNGINX
NGINXは、世界最速のWebサーバーを目指して開発され、その卓越した性能を維持することは、今もプロジェクトの中心的な目標です。Webサーバーの性能を測定するベンチマークでは、NGINXは一貫してApacheなどのサーバーを上回っています。一方、NGINXの初回リリース以降、Webサイトは単純なHTMLページから、動的で多面的なコンテンツへと発展してきました。NGINXもそれに合わせて進化し、現在ではWebSocket、HTTP/2、gRPC、複数の動画形式(HDS、HLS、RTMPなど)のストリーミングをはじめ、現代のWebを構成するあらゆる要素をサポートしています。
Webサーバーの枠を超えるNGINX
NGINXは最速のWebサーバーとして広く知られるようになりましたが、そのスケーラブルな基盤アーキテクチャは、コンテンツ配信以外のさまざまなWebタスクにも最適であることが実証されています。大量の接続を処理できるため、NGINXは一般にリバースプロキシやロードバランサーとして使用され、受信トラフィックを管理し、レガシーデータベースサーバーからマイクロサービスまで、処理速度の遅いアップストリームサーバーに分散します。
NGINXは、SSL/TLS終端またはWebアクセラレーターとして機能するよう、クライアントと別のWebサーバーの間に配置されることもよくあります。NGINXは仲介役として、SSL/TLSネゴシエーションや、パフォーマンス向上のためのコンテンツの圧縮とキャッシュなど、Webサーバーの処理速度を低下させる可能性があるタスクを効率的に処理します。Node.jsからPHPまで、さまざまな技術で構築された動的サイトでは、アプリケーションサーバーの負荷を軽減し、基盤となるハードウェアを最大限に活用するために、NGINXをコンテンツキャッシュおよびリバースプロキシとして導入するのが一般的です。
NGINXとNGINX Plusでできること
NGINX PlusとNGINXは、Dropbox、Netflix、Zyngaなど、トラフィック量の多いWebサイトで使用されている、クラス最高のWebサーバーおよびアプリケーションデリバリーソリューションです。世界中で3億5,000万を超えるWebサイトが、コンテンツを迅速かつ確実、安全に配信するために、NGINX PlusとNGINX Open Sourceを利用しています。
- クラウドネイティブアーキテクチャ向けに設計された、ソフトウェアのみで構成されるオールインワンのロードバランサー、Webサーバー、APIゲートウェイ、リバースプロキシとして、NGINXはITインフラストラクチャとアプリケーションのモダナイゼーションの加速を支援します。NGINX Plusは、堅牢な信頼性とセキュリティを実現するエンタープライズグレードの機能を提供します。
- NGINXは多機能なツールです。NGINXをロードバランサー、リバースプロキシ、コンテンツキャッシュ、Webサーバーとして共通して使用できるため、組織で保守する必要があるツールや設定を減らせます。NGINXでは、導入を支援するためのドキュメントや、豊富なeBook、ウェビナー、動画を提供しています。NGINX Plusには、迅速なカスタマーサポートが含まれているため、NGINXまたはNGINX Plusを使用するスタックのあらゆる部分について、問題の診断に必要な支援を容易に受けられます。
- NGINXは進化を続けています。過去10年間、NGINXはモダンWebの開発を最前線で支え、HTTP/2からマイクロサービスのサポートに至るまで、幅広い分野をリードしてきました。Webアプリケーションの開発とデリバリーが進化し続ける中、NGINX Plusは、シームレスなアプリケーションデリバリーを実現するための機能を継続的に追加しています。これには、NGINX向けにカスタマイズされたJavaScript実装を使用した構成のサポートや、動的モジュールのサポートなどが含まれます。NGINX Plusを使用することで、Webパフォーマンスの最先端を維持できます。
NGINX OneとNGINX Open Sourceの主な違いについては、詳細な比較表をご覧ください。

