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

栢木厚『基本情報技術者教室』(技術評論社、2021年)

坂村健『痛快!コンピュータ学』(集英社文庫、2016年)

 

 上記の書籍を参考にしてクライアントサーバシステムについてまとめてみました。

 

クライアントサーバ

 クライアントサーバシステムは、クライアントとサーバーで機能を分散させる「分散処理」です。元々は1台の高性能なホストコンピュータにデータや処理を集中させる「集中処理」が主流でしたが、多くのコンピュータをネットワークで接続することで、データや処理を分散させる分散処理が可能となっています。

 

弱結合

 ネットワークの研究は、コンピュータが「核攻撃」を受けたらひとたまりもないという恐怖から生まれました。このネットワークの繋ぎ方には「スター結合」、「強結合」、「弱結合」があります。

 スター結合は、ホストコンピュータから放射状にコンピュータを繋ぐやり方ですが、ホストコンピュータが核攻撃を受けたら「全機能が停止」します。

 そこで全てのコンピュータを1対1で繋ぐ強結合が考えられますが、「回線が多すぎて無駄」が増えます。

 その無駄を減らし、コンピュータ同士を「不規則に繋ぐ」ようにしたものが「弱結合」です。

 

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

 プレゼンテーション層、ファンクション層、データベース層の3層構造に分離したアーキテクチャ(コンピュータシステムの論理構造)です。

 

ストアドプロシージャ

 利用頻度の高い命令群をあらかじめサーバ上に用意しておくことです。プロシージャとは複数の処理を1つにまとめたもののことであり、手続きのことです。

 

シンクライアントシステム

 クライアント端末には「必要最低限の機能」だけを持たせるシステムのことです。これはサーバ上でアプリケーションやデータを集中管理することで成り立ちます。実装する仕組みの1つに「VDI」があります。これは、クライアント端末のデスクトップ環境を、仮想化されたサーバ上に集約して稼働させる仕組みです。

 

NAS

 ネットワーク(LAN)に直接接続する「磁気ディスク装置」であり、ファイルサーバ専用機として使われます。

 

サーバ仮想化

 「1台の物理」サーバ上で「複数の仮想」サーバを動作させたり、「複数の物理」的なマシンを「1つのサーバ」として扱ったりするための「技術」です。「ホストOS上」で仮想化ソフトウェアを動作させ、その上で「別のゲストOS」を動かすホスト型、「ハードウェア上」でハイパバイザという仮想化ソフトウェアを動作させ、その上で「複数のゲストOS」を動かすハイパバイザ型、OS上にコンテナエンジンという管理ソフトウェアを動作させ、その上でコンテナと呼ばれる実行環境を動作させるコンテナ型などがあります。

 

ライブマイグレーション

 ある物理サーバで稼働している「仮想サーバ」を停止させず「別の物理サーバ」に「移動させる技術」です。

 

スケールアップ

 個々のサーバの「CPUやメモリなどを増強する」ことで、システムの性能を向上させる手法です。

 

スケールアウト

 「サーバの台数を増やす」ことで、システムの処理能力を向上させる手法です。