
Web技術の急速な発展により、インターネットを通じて様々な情報を得たり、多くの業務をこなしています。
私たちが普段利用しているWebサイトやWebサービスは、インターネットの向こうにあるWebサーバから配信され、ブラウザ上に表示されます。Webサイト/サービスにとって、Webサーバーは 必要不可欠な存在なのです。
今回の記事では、Webサーバーの概要をはじめ、Webサーバーの仕組みやシェア率、サーバーごとの特徴についてわかりやすく解説していきます。現在、主流となっているWebサーバーの種類と特徴を理解して、適切なWebサーバーを選ぶことが重要です。
<目次>
Webサーバーの種類と特徴
・Nginx(エンジンエックス)
・Apache(アパッチ)
・LiteSpeed(ライトスピード)
・IIS(アイアイエス)
Webサーバーとは?
インターネットが普及し、誰でも簡単にWebサイトを持てる時代になりました。また、ほとんどの企業は、自社HPや自社メディアを運営するためにWebサイトを構築し運用することが一般的になってきています。
本章では、Webサーバーの概要や仕組みについて分かりやすく解説していきます。
Webサーバの基本概要
Webサーバーは、ブログやホームページを代表とするWebサイト/サービスにブラウザから最初に接続されるサーバーです。また、各Webサイト/サービスへ連携するためのAPI提供を行うための役割も担っており、Webサーバーの先には、プログラムを実行するためのアプリケーションやデーターベースサーバーが存在しています。
Webサーバと接続するための仕様(プロトコル)は、HTTP/HTTPSと言うものが使われています。
また、Webサーバが扱うコンテンツには大きく2種類あり、いつ閲覧しても同じ内容が表示される静的コンテンツと人や閲覧する時間によって内容が変わる動的コンテンツがあります。
各Webサーバには、得手不得手がありますので、扱うコンテンツにより適切なものを選ぶ必要があります。
Webサーバーの種類ごとのシェア
これまでにWebサーバーはいくつもリリースされています。現在、一般的に利用されているWebサーバーの種類は以下の通りです。
- Nginx(エンジンエックス)
- Apache(アパッチ)
- LiteSpeed(ライトスピード)
- IIS(アイアイエス)
それぞれのシェアは、2022年8月時点では以下のようになっています。
- Nginx:33.8%
- Apache:31.3%
- LiteSpeed:12.3%
- IIS:5.9%
(参考:Historical trends in the usage statistics of web servers)
Apacheは長らくWebサーバーの主流でトップシェアを誇っていましたが、最近ではNginxが台頭してきました。
Webサーバーの種類と特徴
本章では、Webサーバーの種類や特徴について解説します。それぞれの特徴を理解し、自社のサイトに合うWebサーバーを選ぶ際の参考にしてみてください。
Nginx(エンジンエックス)
Nginxは「エンジンエックス」と読みます。2004年にロシアの開発者Igor SysoevによってリリースされたWebサーバーです。無料でソースコードが公開されているオープンソフトウェアで、ライセンスはBSDライクライセンスとなっており、誰でも ダウンロードすることが可能で、自由に改修や機能追加を行うことが可能です。
Nginxの主な特徴は「処理性能の高さ」「並行してリクエストを処理できる」「メモリの使用量が少ない」と言えるでしょう。
これまでWebサーバーのシェア率が高く推移してきたApacheの弱点でもあった、大量のクライアントがWebサーバーへ同時にアクセスし、データ処理しようとする際に、ハードウェアの性能に関わらずレスポンスが大きく低下することに問題意識を持ち開発されていることが、Nginxの特徴の1つと言えるでしょう。
現在、Webサーバーの中でもっともシェアが大きくなっています。
特徴1.速くて高負荷に強い
NginxはApacheと比べて、速くて高負荷に強いという特徴があります。
Nginxはワーカープロセス毎に一つのスレッドしか生成しないシングルスレッドモデルを採用しているため、クライアントからのアクセスが増えてもメモリ消費量が抑えられ、また、ノンブロッキング(I/Oなどの処理完了を待たずに他の作業を行うこと)を採用しており、待ち時間を浪費することなく次の処理が行えるように効率的になっています。
その一方でApacheは、マルチスレッドを採用しており、1クライアントのリクエストを1つのスレッドが処理するため、リクエストが増えるとスレッドも増えていきます。そのため、消費メモリやCPU負荷が増えてしまい、結果サーバーが応答できなくなったり、レスポンスが低下することになります。
ある結果によるとNginxとApacheで、1MBサイズの静的ファイルの応答時間を比較したところ、Nginxは約3倍の速さとなりました。Nginxは特に静的コンテンツの表示速度が高速という強みがあり、Apacheと比較しても圧倒的な差があり、最大の強みと言えるでしょう。
参考:https://cyberpanel.net/blog/apache-vs-nginx/
特徴2.リバースプロキシやロードバランサーを搭載
Nginxにはリバースプロキシやロードバランサー機能があります。
リバースプロキシとは、外部からWebサーバーにアクセスする通信を中継する機能です。ロードバランサーは負荷分散装置とも呼ばれており、外部からの通信を複数のWebサーバーに分散させる機能です。
Nginxは静的コンテンツやリバースプロキシに特化させ、プログラムの実行などはほかのWebサーバーに行わせるといった活用方法があります。
特徴3.Nginx単体での運用は難しい
Nginxは初期設定のままではWebサーバ上で動的コンテンツを生成するような外部プログラムを実行できません。外部プログラムを実行するためにはCGIと呼ばれるものを別途導入する必要があります。
例えば、PHPであればPHP-FPM(PHP FastCGI Process Manager)を導入することとなります。
Apache(アパッチ)
Apacheの正式名称は「Apache HTTP Server」です。
Apacheは20年以上の歴史を持ちWebサーバーの主流であり、過去にはトップシェアを誇っていました。高い性能と優れた動作性から、多くの企業でも利用されています。
現在も、業界シェア2位を誇るWebサーバーの代表的なソフトウェアと言えるでしょう。
特徴1.豊富なモジュールで機能拡張が可能
Apacheでは、豊富なモジュールが用意されており、モジュールを活用して機能を拡張することができます。機能をモジュール化することで、さまざまな機能を柔軟に選択することが可能です。
Apacheでは120種類以上のモジュールがリリースされていると言われており、モジュールの豊富さでは圧倒的な多さがあります。また、Apacheは静的モジュール、動的モジュールともに対応しているのに対して、Nginxでは動的モジュールは有料版であるNginx Plusでのみ対応しているという違いがあります。
特徴2.信頼性と安定性が高い
Apacheの一番の特徴は、信頼性と安定性が高いことです。
20年以上にわたりWebサーバーの代表格だったApacheは、世界でもっとも利用されているWebサーバーの1つです。実用性と安定性は多くのユーザーによって証明されています。
連続稼働が前提のWebサーバーにおいて、安定性と信頼性は最も重要な要素の1つです。Apacheでは定期的にセキュリティの強化を図っているため、セキュリティ面においても安定性があると言えるでしょう。
特徴3.情報を入手しやすい
Apacheは世界中で多くのユーザーに使われており、日本でもWebサーバーの主流です。そのため、Web上には開発者向けの技術情報が豊富で入手しやすい状況です。
インストール方法や設定方法、トラブルの対処法まであらゆる情報がインターネットで簡単に調べられるため、運用面においてのメリットも大きいと考えられます。
LiteSpeed(ライトスピード)
LiteSpeedは2002年にLitespeed industries Inc.によって開発され、近年、超高速Webサーバーとして注目が集まっています。日本でも2017年頃から、Apacheの代わりに採用されるシーンが増えてきました。Apacheとの互換性が高く、高速に動作することが特徴です。
特徴1.Apacheと完全に互換性がある
先に述べたようにLiteSpeedはApacheと完全に互換性があります。そのため、Apacheで利用される.htaccessやmod_rewriteの機能がLiteSpeedでも同様に使うことができます。
そのため、Apacheからサーバーを移行するハードルが低くなり、またサーバーを切り替えるだけで高速サーバーが手に入ることからLiteSpeedに注目が集まっていると言えます。
特徴2.高速Webサーバー
LiteSpeedは超高速で動作するWebサーバーです。
LiteSpeedのHPでは、WordPressをロードした時の表示速度には大きな差が生まれたと記載されています。具体的には、LiteSpeedは高速サーバーとしての強みを持つNginxの最大12倍、Apacheの最大84倍の速さを誇っているという調査結果が出ています。
特徴3.WordPressを専用プラグインで高速化
WordPressはCMSでトップシェアを誇ります。そのWordPressを、LiteSpeedは専用プラグイン「LiteSpeed Cache」で高速化することが可能です。
LiteSpeed CacheはWordPressのプラグインで、ワンクリックで簡単に導入することができます。
IIS(アイアイエス)
IISは「Internet Information Services」の略語で、「アイアイエス」と読みます。Windows Server2016やWindows10にインストールして利用します。
Windowsの画面でWebサーバーを構築できるため、使いやすいことが特徴です。拡張機能や開発環境も充実していて、高い信頼性を誇ります。
特徴1.Windowsと同じで使いやすい
IISの大きな特徴の1つが、Windowsと同じ感覚で使える点です。CUIではなくGUIで操作できるので、コマンドを覚える必要もありません。さほど高いスキルがなくても使えるので、初心者に優しいWebサーバーと言えるでしょう。
また、Microsoft製品との相性も良く、Microsoftが提供するデータベースのSQL、クラウドサービスであるAzure、Windows OSとの親和性が高いことも特徴の1つです。
特徴2.日本語の公式マニュアルがある
IISには、公式の日本語マニュアルがあります。そのため、インストールやWebサーバーの構築、トラブルなどにも簡単に対応することができます。
くわえて、インターネットでもIISの情報は豊富です。検索すればたくさんの情報が出てくるので困ることは少ないでしょう。
Webサーバーの選び方のポイント
企業でWebサイトやブログを立ち上げるときに必要なのがWebサーバーです。本章では、どのような基準でWebサーバーを選べばよいのか、選び方のポイントについて解説していきます。
対応するOSを確認する
Webサーバーの種類によって対応しているOSが異なります。
例えばNginxでは、Linux、Free BSD、macOS、Solaris、AIX、Windowsなど、さまざまなOSをサポートしていますが、Windowsに関しては、限定的なサポートとなっています。また、ApacheであればWindowsやmac OSをはじめとするLinux、BSDなどUnix系システムと互換性があります。
Webサーバーを選ぶ際には、対応するOSも調べておくと良いでしょう。
運用の難易度
Webサーバーを利用する上で、運用の難易度は非常に重要です。
運用する際には、設定方法やトラブル時の対応がネット上で検索しやすければ、自社内でもサーバーの運用を管理することが容易となるでしょう。
また、Webサービスを構築する際は、Webサイト/サービスの内容によってサーバの設定を変更する必要が出てくる可能性があります。設定のし易さを考慮に入れておく必要もありますし、多様な要望が増える可能性がある場合には多機能なWebサーバを選ぶ必要があります。
まとめ
Webサーバーとは、Webサイトを配信するサーバーのことです。パソコンやスマートフォンから送られたリクエストに対し、必要なファイルや結果を返します。
Webサーバーにはいろいろな種類があります。今回は、その中でも代表的なWebサーバーを4つ紹介しました。Webサーバーはそれぞれ特徴があり、メリットやデメリットも様々です。
自社のWebサイトに合うWebサーバーは何か?この機会に考え直しても良いかもしれません。