1. システムの構成
    1. システム形態
      1. メインフレーム
      2.  大型コンピュータを利用したシステム形態で、スター型トポロジを形成しノードと呼ばれるコンピュータのリクエストに対しホストと呼ばれる大型コンピュータで一元処理する。

      3. クライアント/サーバ
      4.  中小型コンピュータを利用したシステム形態で、バス型トポロジを形成し各種サービスを提供するサーバとそれをリクエストするクライアントで構成される。サーバはサービスの内容によって細分化され、システム内に複数あるのが通常でありこのためメインフレームと違い処理が分散される。

        • シンクライアント
        •  クライアントのもつアプリケーションおよびデータを最小限度にとどめてサーバで集中管理し、クライアントマシンのコストダウンとセキュリティの向上を図るシステムアーキテクチャ。

        • 3層クライアント/サーバ
        •  クライアントからサーバに処理やデータを集中するにあたり、一つのサーバで一元管理するのではなく3層に分けて管理するシステムアーキテクチャ。各階層で独立して管理することで各モジュールの独立性を高めて保守性を向上する。

          3層クライアント/サーバ
           プレゼンテーション層  ユーザーインターフェース(UI)でシステムユーザーの操作を受け付ける。
           ファンクション層  アプリケーションが担う機能(ビジネスロジック)の提供。
           データ層  データ管理。DBMSとの連携。

      5. Web
      6.  WWW(World Wide Web)網で提供されるシステム形態で、リング型トポロジであるWWWでバス型のクライアント/サーバシステムが接続されている。各クライアントはローカルエリア内のプロキシ(代理)サーバを経由してインターネット網にある目的のクライアント/サーバシステムにアクセスする。

        • MVCモデル
        •  Web上で実行されるアプリケーションをモデル、コントロール、ビューに分けて管理するシステムアーキテクチャ。3層クライアント/サーバと違いUI操作によってリクエストされる内容をコントロールして適切にビジネスロジックに割り当てる。Webにおける事象応答性に対応するために考案された。

          MVCモデル
           Model  アプリケーションが担う機能(ビジネスロジック)の提供。データ管理。DBMSとの連携。
           Controller  Viewからのリクエストに対し、適切なModelに処理を渡して結果を受け取りレスポンスする。
           View  ユーザーインターフェース(UI)でシステムユーザーの操作を受け付ける。

    2. ハードウェア構成要素の冗長化
      1. プロセッサの多重化
      2.  ハードウェアの構成要素を多重化することによりシステムの性能と信頼性を向上させる。

        • シンプレックスシステム
        •  プロセッサを単体で持つシステム。最も基本的な形態。

        • マルチプロセッサシステム
        •  プロセッサを複数持ち、並列処理を行うことで性能向上に寄与する。

          • 密結合型
          •  主記憶とOSを複数のプロセッサで共有する。
          • 疎結合型
          •  各プロセッサごとに主記憶またはOSを持つ。

        • デュアルシステム
        •  プロセッサを2つ並列に持ち、同じ処理を同時に行って結果を照合する。照合結果が不一致であれば障害の発生とみなす。信頼性向上に寄与する。

        • デュプレックスシステム
        •  プロセッサを2つ並列に2つ持ち、主系と従系にわかれる。通常は主系のみが処理を行い、主系に障害が発生すると従系に処理が移行される。信頼性向上に寄与する。従系は以下のような方法で待機する。

          • ホットスタンバイ
          •  従系は主系の稼働状況を監視し、データの同期を取ることでいつでも従系が主系に代わって処理を継続する方式。

          • コールドスタンバイ
          •  従系は起動していないか別の業務を行う。障害が発生すると従系を起動して処理を継続する。データの同期は必ずしもとれておらず、制約付きの処理継続となる。

          • ウォームスタンバイ
          •  従系は起動していないか別の業務を行う。障害が発生すると従系を起動して処理を継続する。データの同期を取っており、制約のない状態で処理継続ができる。

        • タンデムシステム
        •  プロセッサを2つ直列に持ち、CPUと高度画像処理専用プロセッサなど汎用プロセッサと専用プロセッサを組み合わせて処理の負荷を分散するシステム。性能向上に寄与する。

      3. ディスクアレイ
      4.  ハードディスクを多重化し、補助記憶へのアクセス性能と信頼性を向上させる技術。RAID*と略称される。連続するデータを複数のディスクに分散して書き込むことでシーク時間を短縮してアクセスを高速化するストライピングと同一ブロックを複数のディスクに書き込むミラーリングがある。RAIDはこのどちらあるいは両方を採用するか、どのように実現するかでRAID0~6及びRAID10がある。

        • RAID0
        •  ひとまとまりのデータをデータブロックとし、複数のディスクに分散して書き込むストライピング方式で記憶する。システム性能向上に寄与する。

        • RAID1
        •  ひとまとまりのデータをデータブロックとし、複数のディスクに重複して書き込むミラーリング方式で記憶する。システム信頼性向上に寄与する。

        • RAID2
        •  データをビット単位で複数のディスクに分散して書き込むストライピング方式で記憶し、誤り訂正用のハミング符号を別途ディスクに保持する。システム性能と信頼性双方の向上に寄与するが、ビット単位でデータをストライピングしているため、ブロック単位のRAID0よりもシステム性能の向上は限定的となる。

        • RAID3,RAID4
        •  複数のディスクに分散して書き込むストライピング方式で記憶し誤り訂正用のパリティを別途ディスクに保持する。パリティはディスク1台の故障に対しデータのリカバリが可能。システム性能と信頼性双方の向上に寄与する。RAID3はビット単位でストライピングするがRAID4はデータブロック単位でストライピングするためよりアクセス性能が向上する点が異なる。

        • RAID5
        •  ひとまとまりのデータをデータブロックとし、複数のディスクに分散して書き込むストライピング方式で記憶し誤り訂正用のパリティもストライピング方式で記憶する。パリティはディスク1台の故障に対しデータのリカバリが可能。RAID3,4はパリティを保持したディスクのアクセスが集中するため負荷がかかるが、パリティもストライピングすることで負荷を軽減する。システム性能と信頼性双方の向上に寄与する。

        • RAID6
        •  RAID3,4,5が1種類のパリティを用いるのに対し、2種類のパリティを用いる。パリティはディスク2台の故障に対しデータのリカバリが可能。

        • RAID1(+)0
        •  RAID1とRAID0を組み合わせた方式。データをミラーリングしたのち、ストライピングする。

    3. ネットワークを用いたシステムの冗長化
      1. クラスタリング
      2.  同じ機能をネットワークで接続された複数のコンピュータで実現することで負荷の分散を図る方法。基本的にはシステム性能と信頼性双方の向上を目的とする。ユーザーからは複数のコンピュータを意識させないため、リクエストの振り分けやクラスタ化されたコンピュータ同士のリソースの共有、同期制御などの仕組みが求められる。

      3. NASとSAN
        • NAS(Network Attached Storage)
        •  ネットワーク上で利用可能な補助記憶装置。基本的には補助記憶装置を持つコンピュータがネットワーク上の他の複数のコンピュータの補助記憶装置としての役割を担う。

        • SAN(Storage Area Nwtwork)
        •  補助記憶同士を接続して巨大な補助記憶装置としてネットワーク上に配置する。通常、補助記憶装置同士の接続には高速通信網を用いる。