0

私たちのデータのデータ キャッシュとして AppFabric を使用する可能性を検討しています。私たちのデータは次のとおりです。

  • 1日400万回アクセス
  • 1日5万回更新。
  • 1日50万回検索。

約 1 億のメンバーを収容しており、1 回の更新で 2 ~ 10 のメンバーが影響を受け、キャッシュ内ですべて更新する必要があります。キャッシュは 1 日 10 万から 50 万回更新されます。

私のサーバーには 128 GB の RAM があります。

ガベージ コレクションとキャッシュのレイテンシについて懸念があります。

事実上、ガベージ コレクションでキャッシュされたデータを消去したくありません。リフレッシュするまで存続する必要があります。(キャッシュの更新がいつ必要になるかはわかっています) これは AppFabric で可能ですか? このデータのいくつかは、何日も、一度に 1 年間、放置しておきたいものです。

  • 数 GB の DataCache を実行している場合、レイテンシはどのくらい増加しますか?
  • AppFabric はマスター/マスター モデルで機能しますか? キャッシュを格納する 5 つのサーバーを実行しています。1 つが更新されると、その更新は他のサーバーに伝達されますか?
4

2 に答える 2

2

AppFabric キャッシュは、"スケールアップ" 用ではなく、"スケールアウト" 用に設計されています。

現在、メモリは非常に安価であり、ネットワーク カードは非常に高速です。AppFabric キャッシュは、高価なハードウェアを必要とするデータベース サーバーとは対照的に、通常 Web サーバーに使用される低コストのマシンでうまく機能します。AppFabric は、膨大な数の大きなデータ項目がない限り、IO バウンドであり、CPU バウンドではありません。

書き込みの割合が高い大規模なキャッシュを除いて、キャッシュ サイズの影響はわずかです。マネージド ヒープのサイズが大きい場合、特に高い書き込みワークロードは .NET ガベージ コレクションに大きな負荷をかけます。

したがって、複数の中規模サーバーにまたがる方がよいでしょう。待ち時間が短縮され、高可用性を実現できます。

あなたの質問を読んで、オブジェクトの寿命について混乱していると思います。AppFabric は、次の 2 つの状況でのみオブジェクトを削除します。

有効期限

アイテムをキャッシュに追加するとき、オプションのオブジェクト タイムアウト値を特定のキャッシュ オブジェクトに設定できます。これにより、オブジェクトがキャッシュに存在する期間が決まります。名前付きキャッシュではオフにすることができます。

立ち退き

インメモリ キャッシュとして、AppFabric はキャッシュをディスクに保持しません。これは、メモリが制限されており、キャッシュ サイズが特定の制限を超えて拡大できないことを意味します。これは、サーバーで使用可能な合計メモリまたは構成された最大キャッシュ サイズである可能性があります。キャッシュ サーバー上のキャッシュ サービスのメモリ消費量が下限しきい値 (70%) を超えると、AppFabric は既に有効期限が切れているオブジェクトの削除を開始します。

ここで重要なのは、オブジェクトが AppFabric に永遠に留まると想定できないことです

Grid Dynamics は、Windows Server AppFabric キャッシュのパフォーマンスとスケーラビリティの分析を完了しました。分析用のデータは、さまざまな使用パターン、ワークロード、およびキャッシュの構成で実施された多数のテストから収集されました。このホワイト ペーパーでは、調査結果を紹介し、アプリケーションのキャパシティ プランニングに使用できるいくつかの一般的なユース ケースについて説明します。ダウンロードはこちらから、ソースコードはこちらから

バージョン 1.1 以降、Appfabric はRead-Through と Write-Behind をサポートするようになりました。これも役立つかもしれません。

于 2013-05-23T11:19:42.083 に答える
0

サーバーを正しく構成すれば、ガベージ コレクションは問題になりません。アイテムの有効期限が切れるまでの時間、キャッシュ内のオブジェクトが期限切れになるかどうか、エビクションがオンになっているかどうかなどを構成できます。キャッシュ内のアイテムをロックして、使用中に期限切れにならないようにすることもできます。彼ら。このページでは、有効期限と削除について説明します

于 2013-05-23T10:35:56.213 に答える