はじめに
「Webサーバーの構成図を見ても、ブラウザ・Webサーバー・データベースがどうつながっているの?」
「URLを入力してからWebページが表示されるまで、どこで何が処理されているの?」と疑問に感じていませんか。
Webサイトの仕組みを勉強し始めると、サーバーやデータベースを四角と矢印でつないだ図が出てきても、それぞれの役割や通信の順番が分からず迷いやすいですよね。
この記事では、Webサーバーの基本的な構成と各部分の役割、ブラウザからWebページが表示されるまでの通信の流れを、図をイメージしながら順を追って説明していきます。
Webサーバーの構成図を基本構成から理解するには?

Webサーバーの構成図を理解するには、まず利用者の端末から送られたリクエストが、どのサーバーを通って処理されるのかを確認することが大切です。
まずは基本構成を押さえたうえで、それぞれのサーバーや機器がどこに配置され、何を担当するのかを順番に確認していきましょう。
基本構成は「クライアント→Webサーバー→データベース」

基本的なWebサーバー構成では、PCやスマートフォンなどのクライアントからWebサーバーへリクエストを送ります。
Webサーバーは必要に応じてデータベースから情報を取得し、その結果をレスポンスとしてクライアントへ返します。
この「クライアント→Webサーバー→データベース」が基本的な流れです。
Webサーバーとアプリケーションサーバーの役割

WebサーバーはHTTP・HTTPSリクエストを受け取り、HTMLやCSS、画像などを返します。
一方、アプリケーションサーバーは、ログインや入力内容の処理、データベースへの問い合わせなどを担当します。
役割を分ける場合は、「クライアント→Webサーバー→アプリケーションサーバー→データベース」の順に処理が進みます。
Webサーバーとアプリケーションサーバーの違いが分かりにくい場合は、それぞれが担当する処理を整理しておくと構成図も理解しやすくなります。
▶Webサーバーとアプリケーションサーバーの違いとは?役割をわかりやすく解説
ロードバランサーを加えた構成

ロードバランサーは、クライアントと複数のWebサーバーの間に配置し、届いたリクエストを各サーバーへ振り分けます。
1台のWebサーバーに通信が集中するのを防ぎやすくなるため、構成図では「クライアント→ロードバランサー→複数のWebサーバー→データベース」のように表します。
ロードバランサーを入れると何が変わるのか分かりにくい場合は、仕組みや負荷分散の方法を確認しておくと構成をイメージしやすくなります。
▶ロードバランサーとは?仕組みや負荷分散の方法をわかりやすく解説
Webサーバー構成図に入れる主な要素
Webサーバーの構成図には、利用者側のクライアントからデータを保存するデータベースまで、通信や処理に関わる要素を配置します。
構成図を見ただけで通信の順序を追えるよう、それぞれの要素をどこに配置するのか確認していきましょう。
クライアントとWebサーバー
クライアントは、PCやスマートフォンのブラウザなど、WebサーバーへHTTP・HTTPSリクエストを送る側です。
Webサーバーはリクエストを受け取り、HTMLやCSS、画像などを返します。
構成図では両者を矢印でつなぎ、通信の流れが分かるようにすると見やすくなります。
アプリケーションサーバーとデータベース
アプリケーションサーバーは、Webサーバーから受け取った要求に応じて処理を行い、必要に応じてデータベースへ問い合わせます。
データベースはWebサービスで使う情報を保存し、要求されたデータを返す役割があります。
構成図では処理の順序に合わせて配置すると、それぞれの関係を把握しやすくなります。
ロードバランサー・ファイアウォール・外部サービス
ロードバランサーは複数のWebサーバーへ通信を振り分け、ファイアウォールは設定したルールに従って通信を制御します。
決済や認証などの外部サービスを利用する場合はシステムの外側に配置し、接続するサーバーとの通信経路を矢印で示すと分かりやすくなります。
Webサーバーの構成を図で見る
Webサーバーの構成は、サイトの規模やアクセス数によって、使用するサーバーの台数や配置が変わります。
構成図を見ながら、サイトの規模に応じてサーバーがどのように分離・追加されるのかを順番に確認していきましょう。
小規模サイトの基本構成

小規模サイトでは、1台のサーバーにWebサーバーとデータベースの機能をまとめる構成があります。
同じサーバー内でリクエストの処理やデータの取得を行うため、構成も比較的シンプルです。
構成図では「クライアント→1台のサーバー」とし、サーバー内にWeb機能とデータベースがあることを示します。
Webサーバーとデータベースを分離した構成

Webサーバーとデータベースを別々のサーバーに分ける構成もあります。
クライアントからのリクエストをWebサーバーが受け取り、必要なデータをデータベースサーバーから取得します。
構成図では「クライアント→Webサーバー→データベースサーバー」とすると、処理の流れが分かりやすくなります。
負荷分散と冗長化を取り入れた構成

アクセスが多いサイトでは、ロードバランサーの後ろに複数のWebサーバーを配置し、リクエストを振り分ける構成があります。
同じ役割のサーバーを複数用意しておけば、1台に障害が発生した場合でも、別のサーバーで処理を続けやすくなります。
構成図では「クライアント→ロードバランサー→複数のWebサーバー」とすると、通信の流れを把握しやすくなります。
Webサーバー構成図で通信の流れを確認する
Webサーバー構成図を見るときは、ブラウザから送信されたリクエストがどの機器やサーバーを通り、どの順番で処理されるのかを追うことが重要です。
構成図の矢印をたどりながら、リクエストの送信から処理結果がブラウザへ返るまでの流れを順番に確認していきましょう。
ブラウザからWebサーバーまでの流れ
利用者がブラウザでURLを開くと、WebサーバーへHTTPまたはHTTPSのリクエストが送られます。
Webサーバーはリクエストを受け取り、HTMLや画像などをレスポンスとしてブラウザへ返します。
構成図では、ブラウザとWebサーバーを結ぶ矢印を見ると通信の流れを確認できます。
Webサーバーからアプリケーション・データベースへの流れ

Webサーバーだけで処理できない場合は、リクエストをアプリケーションサーバーへ渡します。
データの取得や保存が必要であればデータベースへ問い合わせ、処理した結果をWebサーバー経由でブラウザへ返します。
構成図では、それぞれをつなぐ矢印を追うと処理の流れを把握しやすくなります。
外部サービスを利用する場合の流れ
決済や認証などを利用する場合は、Webサーバーやアプリケーションサーバーから外部サービスへリクエストを送ります。
外部サービスで処理された結果は接続元のサーバーへ返されるため、構成図ではどのサーバーと外部サービスがつながっているかを確認しましょう。
Webサーバーの構成を決めるときの考え方
Webサーバーの構成は、サイトの規模やアクセス数、停止をどこまで許容できるかに合わせて決めます。
必要以上に構成を複雑にしないためにも、サイトの規模、アクセス負荷、求める可用性の順に確認していきましょう。
小規模なサイトはシンプルな構成にする
アクセス数が少ない小規模サイトでは、サーバーを必要以上に分けず、シンプルな構成にすると管理しやすくなります。
1台で必要な処理をまかなえる場合は、Web機能とデータベースを同じサーバーに配置する方法もあります。
サーバー台数を抑えれば、設定や監視の負担も増えにくくなります。
アクセス増加には負荷分散を取り入れる
アクセスが増えて1台のWebサーバーでは処理しきれなくなった場合は、複数台に増やして負荷を分散します。
手前にロードバランサーを配置してリクエストを振り分けることで、特定のWebサーバーにアクセスが集中するのを防ぎやすくなります。
可用性が必要な場合はサーバーを冗長化する
サーバーの故障によるサイト停止を避けたい場合は、同じ役割を持つサーバーを複数台用意して冗長化します。
1台に障害が発生しても別のサーバーで処理を続けられるため、停止させたくない部分を中心に冗長化を検討するとよいでしょう。
まとめ
Webサーバーの構成は、「クライアント→Webサーバー→データベース」という基本の流れから考えると理解しやすくなります。
構成図を見るときも、リクエストがどこを通り、どのように戻ってくるのかを矢印に沿って確認してみましょう。
実際の構成は、サイトの規模やアクセス数、求める可用性によって変わります。
最初から複雑にするのではなく、必要に応じて負荷分散や冗長化を取り入れながら、運用しやすい構成を選ぶことが大切です。











