ITパスポート試験 用語辞典
- 分野:
- 分野:テクノロジ系
中分類:システム構成要素
小分類:システムの構成 - 重要度:
- ★★★
(Wikipedia クライアントサーバモデルより)クライアントサーバ(client-server)モデルは、クライアントとサーバを分離する、コンピュータネットワークのソフトウェアモデルである。単にクライアント・サーバと呼ばれたり、俗にクラサバと略称されたり、C/Sなどと表記されることも多い。
概要
かつてはメインフレームと呼ばれる大型コンピュータに接続された端末から利用者が操作する形態が中心であった。しかしながら、当時の端末は文字の入力受付と表示を行うのみの貧弱な処理能力しかなかったため、あらゆる計算はメインフレームによって集中的に処理された。
その後、UNIXワークステーションなど表示能力と処理能力の高いコンピュータをたくさん配置することがコスト的に容易な時代になり、特定の役割を集中的に担当するコンピュータ(サーバ)と、利用者の操作するコンピュータ(クライアント)に役割を分け、これらが相互にネットワークで接続されるクライアントサーバモデルが一般化した。このモデルでは、クライアントがサーバに「要求」を送信し、サーバがそれに「応答」を返す形で処理が行われる。
クライアントサーバモデル以外のネットワークアーキテクチャとしては、ピア・ツー・ピアモデルも広く利用されている。これはクライアントやサーバといった役割を固定化せず、ネットワークに参加するコンピュータ(ノード)が場合によってどちらとしても働くというものである。
サーバとクライアントのやり取りを記述するためには、UMLのシーケンス図が利用できる。
サーバの種類
サーバの代表的な役割には次のようなものが存在する。いずれも前述のような形態をとっており、現在のコンピュータシステムでは一般的な概念となっている。
- メールサーバ
- Webサーバ
- アプリケーションサーバ
- ファイルサーバ
- プリントサーバ
例
例えば、Web上のオンラインストアを利用することを考えてみる。この場合、オンラインストアの利用者が使っているコンピュータやWebブラウザがクライアントに相当し、オンラインストアのデータベースやWebサーバがサーバに相当する。Webブラウザがページを表示する要求を送ると、サーバは必要な情報からウェブページを作りこれを応答として返す。これを受信したクライアントがページを表示することで利用者が見ることができる。
狭義のクライアントサーバ
広い意味でクライアントサーバと呼ばれる場合、前述のようにクライアントとサーバと処理を役割分担している分散コンピューティングのことを意味することがある。この場合、サーバがさらに数層分けられる多層アーキテクチャを含める場合がある。
一方で、狭い意味でクライアントサーバと呼ばれる場合には、2層アーキテクチャやリッチクライアントモデルが指される場合がある。
「システムの構成」の用語
「システム構成要素」の他の分野
「テクノロジ系」の他のカテゴリ
このページのWikipediaよりの記事は、ウィキペディアの「クライアントサーバモデル」(改訂履歴)の記事を複製、再配布したものにあたり、このページ内の該当部分はクリエイティブ・コモンズ 表示 - 継承 3.0 非移植 ライセンスの下 に提供されています。