コンピュータネットワークにおいて、リッチクライアント(ヘビークライアント、ファットクライアント、シッククライアントとも呼ばれる)は、通常、中央サーバーとは独立して豊富な機能を提供するコンピュータ(クライアント/サーバーネットワークアーキテクチャでは「クライアント」 )です。この種のコンピュータは、元々は単に「クライアント」または「シッククライアント」として知られていました[ 1 ]。これは、サーバーのアプリケーションに大きく依存するコンピュータを表す「シンクライアント」とは対照的です。リッチクライアントは、豊富なユーザーインタラクションを備えていると説明できます[ 2 ]。
リッチクライアントは、ネットワークまたは中央サーバーへの定期的な接続を少なくとも必要とするものの、接続なしで多くの機能を実行できるという特徴を持つことが多い。一方、シンクライアントは一般的にクライアント側での処理を最小限に抑え、入力データの処理や検証が必要なたびにサーバーへのアクセスに依存する。
クライアント/サーバーアプリケーションの設計者は、タスクのどの部分をクライアントで実行し、どの部分をサーバーで実行するかを決定します。この決定は、クライアントとサーバーのコスト、アプリケーション全体の堅牢性とセキュリティ、そして将来の変更や移植に対する設計の柔軟性に重大な影響を与える可能性があります。
ユーザーインターフェースの特性によって、設計者はしばしば意思決定を迫られる。例えば、ある描画パッケージでは、サーバーから初期画像をダウンロードし、すべての編集をローカルで行い、完了後に修正された図面をサーバーに返すという仕組みが考えられる。この場合、リッチクライアントが必要となり、複雑な図面全体を転送するため、起動と停止に時間がかかる可能性があるが、編集自体は迅速に行える。
逆に、シンクライアントは最初に図面の表示部分だけをダウンロードし、変更があるたびにサーバーに送信して図面を更新することもできます。この方式は起動時間は短いものの、編集処理は非常に時間がかかるという欠点があります。
当初のサーバークライアントは、Wyse VDUなどのシンプルなテキスト表示端末であり、リッチクライアントはPCの利用が増加するまで一般的には使用されませんでした。シンクライアントコンピューティングの当初の原動力は、多くの場合コストでした。CRT端末やPCが比較的高価だった時代には、シンクライアント・サーバーアーキテクチャによって、多くのユーザーにデスクトップコンピューティング体験を提供することが可能になりました。PCの価格が下がり、ソフトウェアライセンス費用も減少するにつれて、リッチクライアント・サーバーアーキテクチャがより魅力的になりました。ユーザーにとって、リッチクライアントデバイスは、シンクライアント環境では実現できない、より応答性の高いプラットフォームと、多くの場合、より優れたグラフィカルユーザーインターフェイス(GUI)を提供しました。近年では、最新のPCが持つ驚異的な処理能力にもかかわらず、インターネットがシンクライアントモデルを推進する傾向にあります。
おそらく最も軽量なクライアント、いわゆる「超軽量」クライアントは、Citrix製品やMicrosoftのリモートデスクトップサービスなどのリモートデスクトップアプリケーションでしょう。これらは、アプリケーションを中央ホスト型の仮想PC上で実行し、ローカルPCと仮想PC間でキー入力や画面イメージをコピーすることを可能にします。こうした超軽量クライアントは、リッチクライアントとして実装された複雑なアプリケーションやデータ量の多いアプリケーションを利用可能にするためによく利用されますが、実際のクライアントはネットワークサーバーのすぐ近くにホストされています。