1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

レストランに例える、Webサービスの全体構成【第2回】

Posted at

― キッチン内部の2つの役割、WebサーバーとWAS

前回の記事では、Webサービス全体の構成をレストラン運営にたとえて解説しました。

今回はその中でもコアとなる**「キッチン(バックエンド)」**をさらに詳しく見ていきます。

レストランのキッチンにも、さまざまな役割があります。

誰かは注文ごとに料理を新しく作り、

誰かはお客様が快適に食事できるようテーブルにサービングする食器を準備します。

開発の世界でも、キッチンの中には2つの異なる役割を持つサーバーが存在します。

それがWAS(Web Application Server)とWebサーバーです。


👨‍🍳 WAS(Webアプリケーションサーバー)― オーダーメイド料理のキッチン

お客様がリゾットやパスタなど好きなメニューを注文したとき、

シェフは注文に合わせて食材を取り出し、新しく調理します。

このようにリクエストが届くたび、都度異なる結果(料理)を作るのがWASの役割です。

お客様の要望に応じて動的にデータを加工・生成します。

つまり、WASはダイナミックなデータを調理するキッチンです。

例えば、

  • ログインしたユーザーごとに異なる画面を表示
  • 注文履歴を取得
  • 決済結果の計算

といった処理はWASが担っています。

💡 代表的なWAS: Spring Boot, Tomcat, Node.js, Django など


🍽️ Webサーバー ― いつも準備されている食器とテーブル

一方、Webサーバーはキッチンのように毎回新しい料理を作るわけではありません。

レストランで常に用意されたテーブル、食器、メニューボードのように

「すでに完成したもの(静的リソース)」をそのまま提供します。

例としては、

  • HTML
  • 画像ファイル
  • CSS/JavaScriptファイル

これらは毎回作り直す必要がなく、あらかじめ準備しておけます。

この静的リソースを素早く届けるのがWebサーバーの役目です。

つまり、Webサーバーは静的なデータ(変更されないファイル)の管理・配信を担当します。

💡 代表的なWebサーバー: Nginx, Apache HTTP Server など


🍴 協力して動く仕組み

お客様がレストラン(Webサイト)を訪れると、

まずWebサーバーを通じて**食堂の基本(静的な画面)を確認し、その上でパーソナライズされた料理(WASリクエスト)**が必要な場合、キッチンで注文が調理されてサーブされます。2つのサーバーが連携することで、お客様は快適かつ素早く食事(サービス)を楽しめます。

区分 たとえ 役割
Webサーバー 食器・メニューボード 静的リソース提供(変わらない) Nginx, Apache
WAS オーダーメイド料理キッチン 動的リソース生成(リクエストごとに変化) Spring Boot, Tomcat, Node.js

⚙️ なぜ分けるのか?

多くのサービスはWebサーバーとWASを分けて運用しています。

理由はシンプルで「効率」と「安定性」の向上のためです。

Webサーバーは静的ファイルを高速に処理し、

WASはより複雑なロジックや動的な処理を担当します。

役割分担を明確にすることで、サーバーへの負荷を最適化し、保守もしやすくなります。

つまり、

  • Webサーバーがお客様を迎え、基本のセッティング(静的リソース)を担当
  • WASが注文ごとに料理(動的処理)をする

このような分業によって効率的なサービス運営が可能となります。🍛


🧭 次回予告

次回は、WAS内部の実際の流れを詳しく見ていきます。

お客様からの注文(リクエスト)が届いたとき、

バックエンドがどのように食材(DB)を取り出し、調理(ビジネスロジック)して、

結果をお客様に届けるのか――その工程を具体的に解説します。

いよいよキッチンの扉を開き、「サーバーが料理を作るプロセス」に迫っていきます。👨‍🍳

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?