AppFabric 1.1 クライアントのドキュメントでは、DataCachServer エンドポイントのリストを DataCacheFactoryConfiguration に割り当てる方法について説明しています。ほとんどの例は、1 つまたは 2 つの異なるキャッシュ サーバーで構成されるリストを示しています。クラスタがn台のサーバーで構成されている場合、クライアントは各サーバーを登録する必要がありますか? サーバーが登録されている順序は重要ですか? たとえば、Web 層に 50 台のサーバーがあり、キャッシュ層に 5 台のサーバーがある場合、50 台の Web サーバーのそれぞれが 5 つのキャッシュ サーバーすべてを登録しますか? サンプルコードは次のとおりです。
// Declare array for cache host(s).
DataCacheServerEndpoint[] servers = new DataCacheServerEndpoint[5];
servers[0] = new DataCacheServerEndpoint("Cache01", 22233);
servers[1] = new DataCacheServerEndpoint("Cache02", 22233);
servers[2] = new DataCacheServerEndpoint("Cache03", 22233);
servers[3] = new DataCacheServerEndpoint("Cache04", 22233);
servers[4] = new DataCacheServerEndpoint("Cache05", 22233);
// Setup the DataCacheFactory configuration.
DataCacheFactoryConfiguration factoryConfig = new DataCacheFactoryConfiguration();
factoryConfig.Servers = servers;
// Create a configured DataCacheFactory object.
DataCacheFactory mycacheFactory = new DataCacheFactory(factoryConfig);
// Get a cache client for the cache named "default".
DataCache myDefaultCache = mycacheFactory.GetCache("default");
各 Web サーバーは同じように登録できますか? また、キャッシュ層全体で負荷が分散されますか? 登録済みのサーバーが使用できなくなった場合、次のサーバーが順番に試行されますか、それともランダム化されますか? サポート ドキュメントへのリンクが役立ちます。
負荷分散に関連して、Jason Rothは次のように書いています [利用可能な他のドキュメントはありますか]?
アプリ ファブリック クライアントはスマート クライアントであり、データを保持しているサーバーに直接接続できます。アプリケーションは負荷分散について心配する必要はありません。これは、ルーティング クライアントを使用して行われます。