クライアントサーバーシステムとは、コンピュータの役割をクライアント及びサーバに分割するシステム構成の一種です。
クライアントサーバーシステムでは、処理を要求するコンピュータをクライアント、その要求を処理した結果を返すコンピュータをサーバと呼びます。広い意味では、複数のサーバ同士が処理の結果を返し合って、全体として1つの結果をクライアントに返す分散処理を含める場合もあります。
一般的には、不特定多数のクライアントが特定のサーバに対し、ネットワークを介して要求を行う形態を取ります。インターネットやメール、プリンタといった身近なネットワークのシステム構成においても使用されている概念です。
Webサイトを閲覧する場合はWebサーバ、メールを利用する場合はメールサーバというように、実際の処理を行うコンピュータは、PCからインターネットを介してアクセスされるようになっています。
コンピュータの役割を分割することは、限られたリソースと機能を有効に使用することにつながります。特にサーバとなるコンピュータは、特定の処理を行うための構成で済みます。
クライアントサーバーシステムを構成するメリットは、負荷を適切に分散できる点です。処理に必要なあらゆる機能をすべてのコンピュータに対して与えた場合、多大なリソースが必要になるため、合理的とは言えません。
一方で、1台のコンピュータにあらゆる機能を詰め込んだ場合、求められる処理能力が甚大となるため、現実的ではありません。
また、実際に行う処理に応じてサーバの仕様を最適化することで、多くのセキュリティリスクに対して柔軟な対応ができるシステムとなります。サーバは特定の処理をして返すだけのコンピュータであるため、処理に使用されない機能の実装・メンテナンスをする必要がありません。
さらに、システム障害が起こった場合は問題の特定や対処を迅速に行うことができます。復旧においてもその影響を最低限に留めることができます。これは、システムの継続的な稼働につながります。