クラサバ
クライアントサーバシステムのことだよ
実務担当のコンピュータ(サーバ)と接客担当のコンピュータ(クライアント)が連携してお仕事をするよ
簡単に書くよ
クラサバとは
「クライアントサーバシステム」の省略表現。
用語の中身としては
実務担当の親玉コンピュータと接客担当の子分コンピュータが連携してお仕事をしているシステムのこと
です。
もう少し具体的に書くと
システムの分類のひとつ
であり
主となるお仕事をするコンピュータ(サーバ)とそれを利用するコンピュータ(クライアント)がネットワークでつながった構成になっているシステムのこと
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・サーバ
・クライアント
・クライアントサーバシステム
について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
サーバは「サービスや機能を提供する側のコンピュータ」です。
クライアントは「サービスや機能を使う側のコンピュータ」です。
サーバがサービスを提供し、そのサービスをクライアントが使います。
クライアントサーバシステム(クライアントサーバ)は「実務担当の親玉コンピュータと接客担当の子分コンピュータが連携してお仕事をしているシステム」です。
主となるお仕事をするコンピュータ(サーバ)とそれを利用するコンピュータ(クライアント)がネットワークでつながった構成になっています。
以上を踏まえて
「クライアントサーバシステム」を省略した表現のひとつ
が「クラサバ」です。
フルネームで「クライアントサーバシステム」と呼ぶのは長ったらしいですからね。
「クラサバ」や「クライアントサーバ」と省略することが多いのです。
それでは次に、クラサバの中身について説明します。
突然ですが、みなさんはファミレスに行ったことがありますか?
あなたがファミレスに行くと、対応してくれるのはウェイトレスのおねーさんです。
ウェイトレスのおねーさんが、注文を取ったり、何か分からないことがあると質問に答えてくれます。
あなたが注文をすると、ウェイトレスのおねーさんはそそくさと下がります。
そして、あなたの注文を調理場にいる料理人に伝えます。
調理場にいる料理人は、あなたの注文した料理を一生懸命作ります。
料理が完成すると、出来た料理をウェイトレスのおねーさんに渡します。
ウェイトレスのおねーさんは出来た料理をあなたの元に運んできます。
これが、ファミレスにおいて、料理提供に関する一連のお仕事です。
このお話における、料理人がサーバ、ウェイトレスのおねーさんがクライアント、そして料理提供に関する一連の仕組みがクラサバです。
ウェイトレス(クライアント)はあなたの注文を聞き、注文内容を料理人(サーバ)に伝えました。
料理人(サーバ)はウェイトレス(クライアント)の指示に従って料理を作り、出来た料理をウェイトレス(クライアント)渡しました。
ウェイトレス(クライアント)は、料理人(サーバ)から渡された料理をあなたに届けました。
ファミレスで料理を注文したときに発生するお仕事
1.注文を聞く
2.料理を作る
3.料理を提供する
の3つのお仕事が、ウェイトレス(クライアント)と料理人(サーバ)に分散されていますよね?
そのため、クラサバは分散システム(みんなで苦労しようぜシステム)の一種であると言われています。
もう少し、実際のコンピュータシステムに近い例を見てみましょう。
ピヨ太君は「ピヨサーバ」と「ピヨクライアント」がネットワークを通して連携するシステム「ピヨピヨクライアントサーバシステム」を作りました。
ちなみにピヨサーバは1台、ピヨクライアントは複数台あります。
ピヨクライアントの主なお仕事は、人間様の相手とピヨサーバとのやり取りです。
人間様から何かを命令されたピヨクライアントは、簡単なお仕事であればピヨクライアント自身が処理します。
面倒そうなお仕事はピヨサーバにお任せします。やって欲しいことをピヨサーバに伝えるのです。
ピヨサーバからお返事が返ってきたら、それをあーだこーだして、結果を人間様へお伝えします。
ピヨサーバのお仕事は、実務です。
ピヨクライアントからの依頼に従って実際のお仕事をやり、結果をピヨクライアントへ返します。
人間様が接するのは、基本的にピヨクライアントだけです。
実際のお仕事はピヨサーバが行っていますが、人間様の目からするとピヨクライアントがお仕事をしているように見えます。
このような構成が、クラサバです。
実務担当のサーバと接客担当のクライアントで構成されています。
どこまでのお仕事を実務担当がやり、どこまでのお仕事を接客担当がやるかは設計次第です。
この部分の割り振りが、作る人の腕の見せ所です。
クラサバのメリットは……なんでしょうね。
一般的には、やらなくちゃいけないお仕事をサーバとクライアントで分担できるので、負荷分散ができると言われています。
ただ個人的には、サーバに負荷が集中するように思えるのですよね。
まぁ良いや。
個人的に思うメリットは
1.主となる部分の改造が容易
2.多人数で使うのが楽
といったところでしょうか。
「1.主となる部分の改造が容易」は、大事な処理は主にサーバ側でやり、かつ、サーバ側は小数台(普通は1台)なのが根拠です。
変更したときの影響範囲や導入の手間が少なくて済みます。
「2.多人数で使うのが楽」は、クライアントが複数台用意できるのが根拠です。使う人が増えたときの対応も楽でしょう。クライアントを増やすだけです。
その分サーバ側の負荷が増えるので限界はありますけどね。
むしろ複数台のクライアントで運用できないのであれば、クラサバな構成にする意味は無いと考えます。
一方のデメリットは
1.クライアント側の改造が大変
2.サーバやネットワークが不調になると皆使えなくなる
といったところですかね。
「1.クライアント側の改造が大変」はメリットの逆です。
クライアントが複数台用意できるということは、クライアント側のプログラムを変更したら全部入れ替えなくてはいけません。面倒くさいです。
「2.サーバやネットワークが不調になると皆使えなくなる」は、仕組み上、仕方ありませんね。
大事な処理はサーバさん側でやるので、サーバさんと連携できなければお手上げです。
そんなところでしょうか。
あっ、そうそう。
クラサバ……というか「クライアントサーバシステム」の説明になってしまいますが、クライアントサーバシステムの方の説明を読んでもらえない可能性があるので、書いておきますね。
「クライアントサーバシステム」という用語は、たまにWebシステムと同列に並べられて比較される場合があります。
この点を補足しておきます。
本来の意味でいえば、Webシステムもクライアントサーバシステムの一種です。
Webブラウザ(インターネットを見るときに使うソフト)をクライアントとするクライアントサーバシステムを「Webシステム」と言います。
ただし、Webシステムと比較される場合のクライアントサーバシステムは「パソコンさんに何か特別なプログラムを入れる必要があるクライアントサーバシステム」と解釈してください。
クライアントサーバシステムのうち、Webブラウザをクライアントとして使うシステムがWebシステムで、それ以外がクライアントサーバシステムとの呼び分けです。
ややこしいですね。
一言でまとめるよ
まぁ「クラサバ」って単語が出てきたら「サービス提供コンピュータとサービス利用コンピュータが連携してお仕事するシステムなんだな~」と お考えください。






