Skip to the content.

最終更新日:2026年9月22日

まず結論

クライアントサーバ方式は、システムの機能を「サービスを要求する側」と「サービスを提供する側」に分ける方式です。

クライアント
「処理してください」
      │
      │ 要求
      ▼
    サーバ
「処理します」
      │
      │ 結果
      ▼
クライアント
  • クライアント:サービスを要求する側
  • サーバ:サービスを提供する側

基本情報技術者試験では、次の一文を判断軸にします。

機械の種類ではなく、「要求する側」と「提供する側」という役割で判断する。

また、クライアントサーバ方式は、異なる役割・機能を分担する垂直分散の考え方として整理できます。

垂直分散 → 異なる役割を分担
水平分散 → 同じ役割を複数に分散

直感的な説明

レストランをイメージすると分かりやすくなります。

客
「料理をお願いします」
      │ 注文
      ▼
   キッチン
「料理を作ります」
      │ 料理
      ▼
     客

コンピュータに置き換えると、

クライアント
「このデータをください」
        │
        ▼
データベースサーバ
「検索して返します」
        │
        ▼
クライアント

となります。

大切なのは、パソコンだからクライアント、高性能コンピュータだからサーバ、と決まるわけではないことです。

× PC = クライアント
× ワークステーション = サーバ

○ 要求する役割 = クライアント
○ 提供する役割 = サーバ

英語でも、client requests, server provides と考えると覚えやすくなります。

垂直分散と水平分散

ここは試験で混同しやすいポイントです。

垂直分散

異なる機能・役割を分ける考え方です。

     システム
        │
  ┌─────┴─────┐
  ▼           ▼
画面・要求    データ処理
クライアント   サーバ

上下に役割を分けるイメージです。

水平分散

同じような機能・役割を複数のコンピュータへ分散する考え方です。

          処理
           │
    ┌──────┼──────┐
    ▼      ▼      ▼
 サーバA  サーバB  サーバC
   同じ役割を分担

複数台で処理を受け持ち、負荷を分散するイメージです。

垂直分散
→ 役割を「分ける」

水平分散
→ 同じ役割を「増やして分ける」

定義

クライアントサーバ方式は、ネットワーク上の処理を、サービスを要求するクライアントと、サービスを提供するサーバに分けて実行するシステム構成です。

例えば、データベースを利用するシステムなら、

[クライアント]
画面表示
入力
検索要求
     │
     ▼
[DBサーバ]
データ保存
検索処理
更新処理

のように役割を分担できます。

クライアント

サーバへ処理やサービスを要求します。

例:

  • Webページを要求する
  • データベース検索を要求する
  • ファイルを要求する

サーバ

クライアントからの要求を受けて、サービスを提供します。

例:

  • Webサーバ
  • データベースサーバ
  • ファイルサーバ

2層と3層

クライアントサーバ方式では、役割の分け方によって2層や3層の構成があります。

2層

クライアント
     │
     ▼
DBサーバ
3層

クライアント
     │
     ▼
アプリケーションサーバ
     │
     ▼
DBサーバ

層が増えても、役割を分けてサービスを要求・提供するという基本は同じです。

どんな場面で使う?

データベースを複数利用者で利用する

PC A ─┐
PC B ─┼→ DBサーバ
PC C ─┘

データをサーバ側で管理し、各クライアントから利用できます。

Webシステム

Webブラウザも身近な例です。

ブラウザ
「ページをください」
     │
     ▼
Webサーバ
「ページを返します」

役割ごとに機能を分離する

クライアント側の画面処理とサーバ側のデータ処理などを分けることで、役割を整理できます。

よくある誤解・混同

パソコンがクライアント、ワークステーションがサーバ

違います。

機械の種類
   ×
役割で決まる
   ○

試験では「何のコンピュータか」ではなく、サービスを要求するか、提供するかを見ます。

データを各端末へ分散する方式

クライアントサーバ方式の定義ではありません。

データベースを利用する典型的な構成では、データをDBサーバ側で管理し、クライアントが要求を送ります。

クライアント
     │ 検索要求
     ▼
  DBサーバ
     │ 結果
     ▼
クライアント

クライアントサーバ方式 = 水平分散

ここが特に重要です。

クライアント
     ↓
   サーバ

役割が違う
→ 垂直分散

一方、

サーバA  サーバB  サーバC
   \      │      /
      同じ処理

のように、同じ役割を複数台へ分けるのが水平分散です。

サーバは必ず1台

「サーバ」は物理的な1台のコンピュータそのものではなく、サービスを提供する役割を指します。

構成によって複数台のサーバを利用することもあります。

まとめ(試験直前用)

  • クライアント = サービスを要求する側
  • サーバ = サービスを提供する側
  • PCやワークステーションなど、機械の種類で判断しない
  • クライアントサーバ方式は役割・機能を分ける
  • 異なる役割を分ける → 垂直分散
  • 同じ役割を複数へ分ける → 水平分散
  • データベースを端末へ分散することが定義ではない

「要求する側」と「提供する側」に分かれていたら、まずクライアントサーバ方式を考える。

© 2024-2026 stemtazoo. All rights reserved.