2012-07-04 8 views
8

純粋な観点から見ると、彼らはまったく同じ概念のように感じます。どちらも、再配置/ノードのセットを管理し、外部コンポーネントからのアクセスを制御します。プールとクラスタの違い

プールでは、これらのリソース/ノードをプールから借りてプールに戻します。

クラスタでは、リソース/ノードの前にロードバランサが配置されており、要求によってロードバランサにヒットします。

どちらの場合でも、リクエスト/借用がどのリソース/ノードにマップされるかは制御できません。

質問:私は質問:"プール"パターンと負荷分散クラスターの基本的な違いは何ですか?

答えて

12

プールは、作成にコストのかかるリソースを常に作成したり破棄したりしないようにするために使用されます。プールのリソースは、一度に1つのクライアントのみが使用できます。使用可能なリソースはプールに格納されます。必要なときにプールから取得し、他のクライアントが利用できないようにします。リソースを使い終わったらプールに戻します。プールは、通常はデータベース接続とスレッドに使用されます。もう1つの利点は、リソース(接続、スレッド)の数を合理的な最大値に維持することができることです。

クラスタは、より多くの同時クライアント(スケーラビリティ)に対応し、シングルポイント障害(フェールオーバー、冗長性)を回避できるノード(コンピュータ、仮想マシン)の集合です。また、ロードバランサは必ずしもランダムではありません。多くの場合、ロード・バランサはスティッキ・セッションを使用します。クライアントがクラスタのノードに割り当てられると、その後のすべてのリクエストは同じノードに移動します。

したがって、目標はプールとクラスタで同じではありません。また、プールに格納されているリソースは、クラスタのリソースと同じ種類ではありません。