どうもこんにちは!
サバ缶(@tech_begin)です。
「システムの処理形態」という言葉を聞いて、どんなイメージが思い浮かびますか?
言葉の意味が曖昧すぎますよね。
実際の現場では「処理形態」という言葉はあまり使いません。
結構ざっくりとした意味合いで使うことが多いです。
この記事では、その曖昧な「システムの処理形態」の意味を紐解いていきます💪
システム処理形態
システムの処理形態は、大きく以下の2つに分けられます。
- 集中処理システム
- 分散処理システム
さっそく詳しく見ていきましょう!
集中処理システム
集中処理システムとは、「ホストコンピュータ」という1台のコンピュータに、複数のコンピュータを接続し、ホストコンピュータが全ての処理を行うような形態のことを指します。
「シンクライアント」という、サーバ側で処理のほとんどを任せ、クライアント側では必要最低限の処理しかさせないシステムもこれに該当します。
外側のPC端末だけ存在し、中身のOSやソフトウェアはホストコンピュータが担っているというイメージです。
集中処理システムのメリット
集中処理システムのメリットは以下の通りです。
- 運用管理、保守がしやすい
- ホストコンピュータ1台を管理することで、全てのクライアントを一括管理できる
- 情報漏洩を防止できる
- ホストコンピュータにデータが保管されていることがほとんど
- SSL通信によって暗号化している
- アクセサビリティの向上
- シンクライアントの場合、端末とネット環境さえあればどこからでも自分の環境にアクセスできる
集中処理システムのデメリット
メリットがあるということは、その裏返しでデメリットもあります。
デメリットは以下の通りです。
- サーバ負荷が大きい
- ホストコンピュータのCPUや保存領域を共有することから、多数のPCが一斉にアクセスすると大きな負荷がかかる
- アプリケーションの動作が重くなることも
- ネット接続環境がないと利用できない
- 通信速度が遅い場合、読み込みなどの1つ1つの処理に時間がかかることも
- ホストコンピュータが故障すると、システム全体が停止してしまう
- クライアントは全ての処理をホストコンピュータに任せているため、中心の1台が故障したら全て使用不可になる
分散処理システム
分散処理システムとは、複数のコンピュータを接続し合い、大量の処理を分担して実行する形態のことを指します。
集中処理システムの場合、ホストコンピュータがさばく処理の量にも限界があります。
そこで生まれたのがこの『分散処理システム』です!
分散処理システムであれば、複数台で処理を分担できるので、システム規模が大きくなってもコンピュータを増やすことで対応することが可能です。
現在、この分散処理形態が一般的になっています。
分散処理システムのメリット
分散処理システムのメリットは、以下の通りです。
- 故障に強い 1台が故障しても他のコンピュータが稼働しているため、システムが停止しない
- 負荷分散 各コンピュータにかかる負荷も分散されるため安定した稼働を保てる
- 初期コストが低い 負荷分散によって、各コンピュータの性能は低くても問題なく稼働する
- 大型コンピュータを導入するより低コストになる(場合がある)
分散処理システムのデメリット
分散処理システムのデメリットは、以下の通りです。
- 運用管理にコストがかかる
- 分散システムでは、多数のコンピュータを管理しなければならない
- それぞれのコンピュータの環境も異なるため、障害発生時の復旧に手間がかかる場合もある
- セキュリティ対策のコストがかかる
- それぞれのコンピュータで通信や処理を実行するため、各コンピュータに対するセキュリティ対策が必要となる
- ネットワークにファイアウォールを設定するなど、集中処理よりも手間がかかるケースが多い
分散処理システムの種類
さて、一旦ここでおさらいしておきましょう。
処理形態には2つの種類がありましたね。
「集中処理システム」と「分散処理システム」です。
さらに分散処理システムは、以下の2つに分けられます。
- 水平分散
- 垂直分散
あまり難しく考えず『そういうものがあるんだ』ということをまずは知りましょう!
水平分散システム
同じ処理能力を持ったコンピュータ同士を接続して、処理を分散させます。
水平分散にもさらに2つ分かれます……😥
- 水平負荷分散システム
- 1つの大きな処理を、小さな処理に分割して割り振る
- 水平機能分散システム
- 複数の処理が来たとき、1つのコンピュータに1つの機能を割り振る
どんどん用語が増えていっていますが、最後にまとめるので安心してくださいね……!
水平分散では、処理が来た順番でコンピュータに処理を割り振っていきます。
垂直分散システム
複数のコンピュータに上下関係(階層的)に分け、機能を分散させる処理形態です。
コンピュータごとに機能ごとの担当を割り振る形態です。
『クライアントサーバシステム』が代表的な垂直分散システムです。
分散処理の種類について以上です!
まとめ
「処理形態」という言葉だけを聞くと曖昧ですが、大きく分けて2つだけということがわかりました。
また、現在エンジニアの方も「あぁこういうことか」と発見があったかもしれません。
最後に整理しておきましょう!
- 集中処理システム
- 分散処理システム
- 水平分散システム
- 水平負荷分散システム
- 水平機能分散システム
- 垂直分散システム
- 水平分散システム
現場ごとで曖昧に使っている言葉などもあるので、そこは合わせた方がいいですが基本の考えはしっかり押さえて置きましょう!💪
次は、Webのシステムに絞って利用形態について学んでいきます。