クライアントサーバシステム

この記事での学習内容 基本情報 応用情報

クライアントサーバシステムの特徴,2 層クライアントサーバシステム,3 層クライアントサーバシステムの構成を理解する。また,データベースに対するストアドプロシージャなど,関連技術の特徴を理解する。

用語例:プレゼンテーション層,ファンクション層,データベースアクセス層,クライアント,サーバ,シンクライアントシステム,RPC,ローカル処理の応答速度,コスト性能比,柔軟性,管理責任,サーバへの利用集中

クライアントサーバシステム

ネットワークに接続されたコンピュータが、それぞれファイル管理やWebページの提供などの特定の役割を担い、ネットワーク上で処理を分散する仕組みを、クライアントサーバシステムといいます。

サービスを提供する側のコンピュータをサーバ、サービスを要求する側のコンピュータをクライアントといいます。

サーバの種類

クライアントサーバシステムではネットワーク上に各種サーバ機能とクライアント機能を分散して配置します。

主なサーバ機能には次のようなものがあります。

名称役割
ファイルサーバファイルを集中管理し、ファイルの共有機能を提供する。
WebサーバWebページを格納し、クライアントに公開する。
メールサーバ電子メールの送受信、転送を行う。
プリントサーバ印刷要求をプリントキューに格納し、プリンタの共有機能を提供する。
データベースサーバデータベースを集中管理し、アクセス制御とデータの登録/削除などの機能を提供する。

サーバは一つのネットワーク上に複数配置することができます。また、1台のコンピュータが複数のサーバ機能を持つこともできます。
サーバが他サーバのクライアントとして処理要求を出すこともあります。

2層クライアントサーバ

サービスを提供するサーバとそれを利用するクライアントという形態を2層クライアントサーバといいます。

2層クライアントサーバには、ネットワークに接続されるクライアントの数が増えると、サーバとクライアント間の通信料が増えて、ネットワークの負荷やサーバの負荷が高くなるという欠点があります。

3層クライアントサーバ

ネットワークやサーバに掛かる負荷を減らす手法として、処理全体を論理的に3層構造に分け、データの加工などの一部の処理を別のサーバが行うことで、全体の通信料を抑えるという、3層クライアントサーバという形態もあります。

データ層
サーバ又はホストコンピュータにあるデータベースやファイルなどを指します。
アプリケーション層
データの処理や加工、ホストコンピュータへの接続など、中間の業務処理機能です。3層クライアントサーバシステムにおいては、データベースとクライアントの仲介役を果たします。
プレゼンテーション層
クライアント側の処理で、ユーザからの入力を受け付け、処理要求をサーバに送信し、サーバから戻ってきた結果を表示します。

RPC(遠隔手続き呼び出し:Remote Procedure Call)

遠隔地にあるサブルーチンや手続きを、ローカルなサブルーチンや手続きと同じように呼び出すこと、又はその方式をRPCといいます。

遠隔地にあるサブルーチンや手続きに対して、パラメータを渡して実行し、結果を得るインタフェースが基盤としてあって、プログラムの側は遠隔地にあることを意識しなくても良いようにするものです。