🖥️

クライアント-サーバー

伝統的なリクエスト-レスポンスモデル

最も伝統的で広く使われているアーキテクチャです。クライアントがリクエストを送信し、サーバーがレスポンスを返す単方向フローで、HTTP/HTTPSプロトコルが代表的です。

構造ダイアグラム

🌐
ブラウザ
📱
モバイルアプリ
リクエスト
レスポンス
🖥️
サーバー
API / Web Server
🗄️
データベース
フロー説明
  1. クライアントがサーバーにHTTPリクエストを送信
  2. サーバーがリクエストを受信しビジネスロジックを実行
  3. 必要に応じてデータベースを照会/保存
  4. サーバーがクライアントにレスポンスを返却

動作フロー

1

クライアントがサーバーにHTTPリクエストを送信(GET、POSTなど)

2

サーバーがリクエストを受信して処理

3

サーバーがデータベース照会/ビジネスロジックを実行

4

サーバーがクライアントにHTTPレスポンスを返却

メリット

  • 実装がシンプル
  • デバッグが容易
  • キャッシュの活用が可能
  • 標準化されたプロトコル

デメリット

  • サーバーがボトルネックになる可能性
  • リアルタイム更新が困難
  • サーバーダウン時にサービス中断
  • クライアントが常に先にリクエストする必要がある

ユースケース

Webアプリケーション(ブラウザ ↔ Webサーバー) REST API GraphQL API モバイルアプリのバックエンド