AppFabric Web ファームへのスケールアウト

Windows Server AppFabric Web ファームの各サービス ノードには AppFabric 機能がインストールされています。 そのため、複数サービスのリソースを共有することで、負荷が増えても処理できます。 どのような運用環境でも、増加した負荷、高可用性、監視、および改善された管理性の要件を満たす AppFabric Web ファームが推奨されます。 概念上は、AppFabric サービス ホスティング階層をスケールアウトする一般的なアプローチは、次の図のように Web ファームを作成する場合と同じです。

仮想 IP

複数サーバー Web ファーム環境に AppFabric をインストールする詳細な手順については、「Windows Server AppFabric Web ファーム ガイド」を参照してください。

スケールアウト パフォーマンス

ステートレス WCF および WF サービスでは、インスタンス化においてどのような種類の状態も維持されません。 Microsoft のスケールアウト パフォーマンス テストでは、ステートレス WCF および WF サービスの場合、AppFabric は直線的にスケールアウトすることがわかっています。 つまり、AppFabric Web ファーム上のノード数を 2 倍にすることでスループットも 2 倍になり、一方で一定のサービス応答時間 (遅延) が維持されます。 次のグラフは、スケールアウトの特性を示しています。

1 秒あたりのスループット呼び出し 呼び出しの遅延

上のグラフでは、Y 軸の縮尺と単位は各サービスのロジックと実装によって変わります。

スループット グラフの場合、スケールアウトでほぼ直線的にスループットが増えています。 ステップ負荷テストの特定の時点で、1 台のサーバーから 2、4、最終的には 8 台まで増やすごとに、スループットは倍増しています。 同時に、遅延は変わりません。

ただし、AppFabric 永続化ストアを使用して状態を格納する永続的な WF サービスの遅延グラフの場合、スケールアウトは非直線的です。 具体的な特性は、永続化ポイント数、関連付けの数と複雑さ、ワークフロー状態の規模など、多くの要素によって変わります。 また、ワークフローの実装によっても変わります。 各ワークフロー サービスのスケールアウトの特性を適切に理解するために、実際のワークフロー サービス実装を使用してスケールアウト ラボを実行することが推奨されます。

パフォーマンス テストの結果では、8 ノードの AppFabric Web ファームで実行される永続的な WF サービスによって、永続化データベースでディスク I/O およびデータベースのロックによる競合が発生することがわかっています。 ステートレスまたは非永続的なワークフローの場合、この競合は発生しません。 中間層をスケールアウトすることでスループットを向上しようとする場合、競合は制限要素になります。 次のグラフでは、永続的なワークフロー サービス (赤い棒) と、機能的には同等で永続的ではないワークフロー サービス (青い棒) のスケールアウト パターンを比較しています。

スループットおよび保持ポイント データ

このドキュメントの「データ記憶域の階層」では、スループットに対する永続的な影響を軽減するガイドラインと技術を説明しています。

  2011-12-05