9

プロジェクトの 1 つで AppFabric キャッシュ機能を使用することを検討しています。分散キャッシュ機能が必要であり、AppFabric が適切なソリューションのようです。ただし、いくつかの質問があり、ここで回答されることを願っています。

Web アプリケーションがインストールされているのと同じマシンで AppFabric キャッシュ サーバーをホストすることを検討しています。MSDN の記事で、AppFabric は専用のマシンにインストールする必要があることがわかりました。また、AppFabric はアプリケーション自体と同じマシンにインストールできますが、いくつかの問題を考慮する必要があることにも注意してください (記事からの引用)。

Windows Server AppFabric キャッシュ ホストは、キャッシュ サービス専用にする必要があります。つまり、これらのサーバーは、アプリケーション、Web、またはデータベース サーバーとしても使用されません。クラスター内で非専用キャッシュ サーバーを使用することは可能ですが、このシナリオはサポートされていません。このポリシーにもかかわらず、非専用のキャッシュ ホストを使用する場合は、各キャッシュ ホストの構成を適切に見積もり、テストして、キャッシュ サービスとマシン上の他のすべてのサービスの両方に十分なメモリとネットワーク リソースを許可するようにしてください。また、他のサービスによるプロセッサとネットワークの使用率が急上昇すると、キャッシュ クラスタのパフォーマンスと安定性に悪影響が及ぶことも理解しておいてください。

この記事へのリンクは次のとおりです:記事 #1

さて、これは十分に理にかなっているように聞こえますが、AppFabric キャッシュが使用できる RAM の量を制限するだけで十分だと考えていました。しかし、MSDN の別の記事を読むと、次のことがわかりました。

物理マシンと仮想マシンの両方について、キャッシュを使用するアプリケーション サーバーまたは Web サーバーに対するキャッシュ クラスターの場所に注意する必要があります。それらが別々のデータ センターにある場合は、それらのデータ センター間の待機時間がパフォーマンスに悪影響を及ぼさないことを確認してください。この段階では、アプリケーションまたは Web サーバーをキャッシュ サーバーとして使用したくなるかもしれません。可能ですが、これはサポートされていません。まず、これらのマシン上の IIS などのサービスによるリソース使用量の急増は、キャッシュ クラスターに影響を与える可能性があります。第 2 に、キャッシュ サービスは専用サーバー上にあると想定し、指定したよりも多くのメモリを使用する可能性があります。

この記事へのリンクは次のとおりです:記事 #2

上記のステートメントを正しく理解していれば、これは、AppFabric の構成設定にもかかわらず、必要なだけの RAM を使用することを意味しますか? これは本当に真実でしょうか?アプリケーションと AppFabric が同じマシンに配置されている構成の経験はありますか?

4

1 に答える 1

4

appfabirc で私のストーリーを共有するために、共有サーバーで appfabric キャッシュを使用し始めましたが、次の問題のために最終的に削除する必要がありました...

  1. オブジェクトをそこに保存しようとしていましたが、グラフ全体をシリアル化してサーバーに送信する必要がありましたが、需要の高いシナリオでは、db 自体からプルするよりもどれだけ効率的かわかりません。さらに、デリゲートやイベントのワイヤアップ、またはオブジェクトの非同期操作に別れを告げることができます..

  2. キャッシング サービス自体が、利用できないというエラーを断続的にスローするため、PowerShell を使用して正常性を確認する必要があります。また、ボックスが RAM の 90% 以上を使用している場合はいつでも、動作を停止します..

  3. ボックスにメモリの負荷が少しある場合でも、キャッシュからアイテムを積極的に削除しようとし、常に約 10 ~ 20% の CPU を消費していました....

要約すると、独自の専用クラスターが必要であるという MS の推奨事項は正しいと思いますが、すべてのアプリケーションには独自のニーズがあり、展開環境のパラメーターに対して評価する必要があります。

于 2011-11-17T15:39:56.757 に答える