この章の内容は次のとおりです。
親トピック: キャッシュの使用
シリアライズ・ページ・キャッシュは、次のように定義されます。
シリアライズは、キャッシュに格納されたオブジェクトがシリアライズされ、バイナリ・ストアに格納されることを意味します。既存の機能であるシリアライズ・マップおよびシリアライズ・キャッシュを参照してください。
ページは、キャッシュに格納されたオブジェクトをセグメント化して管理を効率化することを意味します。
キャッシュは、キャッシュのサイズに指定された制限が存在することを意味し、この制限はキャッシュが同時に管理するページの最大数で、この最大限度を超えると最も古いページから失効します。
これらをまとめると、データがキャッシュに格納された時刻を基準にしてデータをキャッシュ内に配列してから、ページ全体を単位として効率的にキャッシュ内のデータを失効させる機能ということになり、通常はディスクからデータをリロードする必要はありません。
親トピック: シリアライズ・ページ・キャッシュ
キャッシュ内のデータの各ページは、別々のバイナリ・ストアで管理されます。キャッシュにはバイナリ・ストア・マネージャが必要です。これによってバイナリ・ストアの作成および破棄が可能になります。Coherenceでは、Berkley DBなど、組込みのバイナリ・ストア実装のすべてに対してバイナリ・ストア・マネージャが提供されます。
シリアライズ・ページ・キャッシュは、キャッシュ構成ファイルの<external-scheme>
および<paged-external-scheme>
要素の中で構成されます。external-schemeおよびpaged-external-schemeを参照してください。
親トピック: シリアライズ・ページ・キャッシュ
親トピック: シリアライズ・ページ・キャッシュ
親トピック: シリアライズ・ページ・キャッシュ
親トピック: シリアライズ・ページ・キャッシュ
大量のデータに対してキャッシュが使用される場合、通常はページがディスクによってバッキングされます。キャッシュは最終的に各ページを失効させてディスク・リソースを解放するため、キャッシュはデフォルトでは仮想削除の最適化を使用します。このため、キャッシュから明示的に削除されたデータや失効したデータは、実際には基礎となるバイナリ・ストアから削除されず、ページ(バイナリ・ストア)が完全に空になったときにすべてが消去されます。これによって、特にクラスタ内の大量のデータの再分散が必要な失効処理およびロード・バランシングなどの操作の際に、I/Oが大幅に減少します。この最適化の代償として、ディスク・ファイル(ディスクベースのバイナリ・ストア・オプションを使用する場合)が、それらが管理しているデータが示唆するよりも大きくなる傾向があります。ディスク領域は応答時間などの他の要素と比較して安価と見なされるため、仮想削除の最適化はデフォルトで有効になっていますが、無効にすることもできます。一般に、ディスク領域はローカルで各サーバーに割り当てられ、テラバイトのキャッシュも100台以上のサーバーでパーティション化されるため、使用されるディスク領域はサーバー1台当たり約20GBにすぎません(プライマリ・ストアに10GB、バックアップのレベルが1とした場合にバックアップ・ストアに10GB。)
親トピック: シリアライズ・ページ・キャッシュ