クライアントサーバシステムとは、ネットワークを利用したシステムの形態の一つで、サービスを要求する側(クライアント)と、サービスを提供する側(サーバ)で、役割(処理)を明確に分担して運用する仕組みのことです。クライアント(パソコンやスマートフォンなど)は、画面を表示してユーザの入力を受け付け、サーバに対して処理を「リクエスト(要求)」します。サーバ(専用の高性能コンピュータなど)は、その要求を処理してデータベースなどを更新し、結果を「レスポンス(応答)」として返します。
身近な例として、飲食店の関係に例えられます。注文をする客(クライアント)が「ハンバーガーをください」と注文(リクエスト)し、厨房の料理人(サーバ)が調理を行って料理(レスポンス)を客に提供します。このように役割を分担することで、客は料理の作り方を知らなくても美味しい料理を食べることができ、料理人は調理に専念できます。プログラム的なやり取りは以下のようになります。