[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

クライアントサーバシステム (client server system)

pointこの用語のポイント

pointシステムだよ

point実務担当のコンピュータ(サーバ)と接客担当のコンピュータ(クライアント)が連携してお仕事をするよ

スポンサーリンク

簡単に書くよ

クライアントサーバシステム (client server system)とは

ファミレス方式になっているシステムのこと。
もう少し具体的に書くと

実務担当の親玉コンピュータと接客担当の子分コンピュータが連携してお仕事をしているシステムのこと
であり

主となるお仕事をするコンピュータ(サーバ)とそれを利用するコンピュータ(クライアント)がネットワークでつながった構成になっているシステムのこと
です。

image piyo

詳しく書くよ

実際にあれやこれやの処理を行う「サーバ」と、それを利用する「クライアント」が、ネットワークを通して連携する形で構成されているシステムが「クライアントサーバシステム」です。
サーバは「サービスや機能を提供する側のコンピュータ」ね。
クライアントは「サービスや機能を使う側のコンピュータ」です。

クライアントサーバシステムとフルネームで呼ぶのは長ったらしいので「クライアントサーバ」や「クラサバ」と省略して表現されることもあります。

突然ですが、皆さんはファミレスに行ったことがありますか?

あなたがファミレスに行くと、対応してくれるのはウェイトレスのおねーさんです。
ウェイトレスのおねーさんが、注文を取ったり、何か分からないことがあると質問に答えてくれます。

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

あなたが注文をすると、ウェイトレスのおねーさんはそそくさと下がります。
そして、あなたの注文を調理場にいる料理人に伝えます。

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

調理場にいる料理人は、あなたの注文した料理を一生懸命作ります。
料理が完成すると、出来た料理をウェイトレスのおねーさんに渡します。

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

ウェイトレスのおねーさんは出来た料理をあなたの元に運んできます。

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

これが、ファミレスにおいて、料理提供に関する一連のお仕事です。

このお話における、料理人がサーバ、ウェイトレスのおねーさんがクライアント、そして料理提供に関する一連の仕組みがクライアントサーバシステムです。

ウェイトレス(クライアント)はあなたの注文を聞き、注文内容を料理人(サーバ)に伝えました。
料理人(サーバ)はウェイトレス(クライアント)の指示に従って料理を作り、出来た料理をウェイトレス(クライアント)渡しました。
ウェイトレス(クライアント)は、料理人(サーバ)から渡された料理をあなたに届けました。

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

ファミレスで料理を注文したときに発生するお仕事

1.注文を聞く
2.料理を作る
3.料理を提供する


の3つのお仕事が、ウェイトレス(クライアント)と料理人(サーバ)に分散されていますよね?
そのため、クライアントサーバシステムは分散システム(みんなで苦労しようぜシステム)の一種であると言われています。

もう少し、実際のコンピュータシステムに近い例を見てみましょう。

ピヨ太君は「ピヨサーバ」と「ピヨクライアント」がネットワークを通して連携するシステム「ピヨピヨクライアントサーバシステム」を作りました。
ちなみにピヨサーバは1台、ピヨクライアントは複数台あります。

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

ピヨクライアントの主なお仕事は、人間様の相手とピヨサーバとのやり取りです。
人間様から何かを命令されたピヨクライアントは、簡単なお仕事であればピヨクライアント自身が処理します。
面倒そうなお仕事はピヨサーバにお任せします。やって欲しいことをピヨサーバに伝えるのです。
ピヨサーバからお返事が返ってきたら、それをあーだこーだして、結果を人間様へお伝えします。

ピヨサーバのお仕事は、実務です。
ピヨクライアントからの依頼に従って実際のお仕事を行い、結果をピヨクライアントへ返します。

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

人間様が接するのは、基本的にピヨクライアントだけです。
実際のお仕事はピヨサーバが行っていますが、人間様の目からするとピヨクライアントがお仕事をしているように見えます。

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

このような構成のシステムが、クライアントサーバシステムです。
実務担当のサーバと接客担当のクライアントで構成されています。

どこまでのお仕事を実務担当が行い、どこまでのお仕事を接客担当が行うかは設計次第です。
この部分の割り振りが、作る人の腕の見せ所です。

クライアントサーバシステムのメリットは……なんでしょうね。

一般的には、やらなくちゃいけないお仕事をサーバとクライアントで分担できるので、負荷分散ができると言われています。
ただ個人的には、サーバに負荷が集中するように思えるのですよね。

まぁ良いや。

個人的に思うメリットは

1.主となる部分の改造が容易
2.多人数で使うのが楽


といったところでしょうか。

「1.主となる部分の改造が容易」は、大事な処理は主にサーバ側で行い、かつ、サーバ側は小数台(普通は1台)なのが根拠です。
変更した際の影響範囲や導入の手間が少なくて済みます。

「2.多人数で使うのが楽」は、クライアントが複数台用意できるのが根拠です。使う人が増えたときの対応も楽でしょう。クライアントを増やすだけです。
その分サーバ側の負荷が増えるので限界はありますけどね。
むしろ複数台のクライアントで運用できないのであれば、クライアントサーバシステムにする意味は無いと考えます。

一方のデメリットは

1.クライアント側の改造が大変
2.サーバやネットワークが不調になると皆使えなくなる


といったところですかね。

「1.クライアント側の改造が大変」はメリットの逆です。
クライアントが複数台用意できるということは、クライアント側のプログラムを変更したら全部入れ替えなくてはいけません。面倒くさいです。

「2.サーバやネットワークが不調になると皆使えなくなる」は、仕組み上、仕方ありませんね。
大事な処理はサーバさん側で行うので、サーバさんと連携できなければお手上げです。

そんなところでしょうか。

あっ、そうそう。

クライアントサーバシステムは、たまにWebシステムと同列に並べられて比較される場合があります。
この点を補足しておきます。

本来の意味でいえば、Webシステムもクライアントサーバシステムの一種です。
Webブラウザ(インターネットを見るときに使うソフト)をクライアントとするクライアントサーバシステムを「Webシステム」と言います。

ただし、Webシステムと比較される場合のクライアントサーバシステムは「パソコンさんに何か特別なプログラムを入れる必要があるクライアントサーバシステム」と解釈してください。
クライアントサーバシステムのうち、Webブラウザをクライアントとして使うシステムがWebシステムで、それ以外がクライアントサーバシステムとの呼び分けです。

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

ややこしいですね。

image piyo2

一言でまとめるよ

まぁ「クライアントサーバシステム」って単語が出てきたら「サービス提供コンピュータとサービス利用コンピュータが連携してお仕事するシステムなんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク