キャッシュキーとデータキャッシュの概要
NCache オブジェクトの保存とデータのキャッシュに拡張されたキーと値の構造を使用します。したがって、従来のキー/値ストアには文字列値に対する文字列キーが含まれていますが、 NCache プリミティブ データ型、カスタム オブジェクト、 NCache-固有のオブジェクト (CacheItems)、データ構造、および各キーの値としての JSON。 したがって、キャッシュに追加される各アイテムには、一意の文字列キーが必要です。
Note
この機能は以下でも利用できます NCache Professional.
データ キャッシュのキャッシュ キー
このキーと値の構造は、キャッシュからオブジェクトを取得する場合に有利です。 その間 NCache クエリやタグ付けなど、複数のキャッシュ データ取得方法をサポートしています。キーは、キャッシュ全体に対してクエリを実行することなく、関連するアイテムを効率的に取得します。
キー入力 NCache 次のプロパティがあります。
- 一意-重複するキーは許可されません
- 文字列ベースのみ
- 有効な文字列-null/空の文字列は許可されていません
- 大文字と小文字を区別
先端
キーに名前を付けるためのグッドプラクティス:
- 関連するデータを説明する意味のある名前をキーに付けます。 たとえば、「key1」という名前のキーと比較して、「keyXNUMX」が何に関連付けられているかを忘れてしまう可能性があります。 製品:1001. このキー名は、製品アイテムとしてそれ自体を説明します。 商品ID 1001.
- 複数のクラスの場合、キー名の前にプレフィックスを追加して、クラスのキーをマークできます。 たとえば、あなたのデータはそのようなものです プロダクト および 顧客 オブジェクトはキーとして「1001」を持つことができます。 これらは次の形式にすることができます [クラス名]_[キー名] 彼らが Product_1001 および 顧客_1001 明確にするために。
- 複数の単語を含むキー名の場合、任意の文字を使用して読みやすくすることができます。一般的なものは次のとおりです。
_ , & : - =
。 例えば、 製品_項目:1001.
アイテム間の場所の親和性
NCache は、異なるクラスの項目間のアフィニティを作成するキャッシュにデータを保存するメカニズムを提供します。異なるタイプのアイテムを同じノードに保存すると、類似したキーを持つアイテムをフェッチする際のマッチングコストを節約できます。このメカニズムはバックエンドで同様のエントリをマップするため、データのキャッシュと取得がさらに高速化されます。
ロケーション アフィニティは、データをキャッシュに入力する際に手動で有効にすることができます。 項目キーは中括弧内で同じでなければなりません {}
他の項目のように。 たとえば、 プロダクト および 注文 オブジェクト、キーを指定できます 製品:1001 キャッシュ内の Product オブジェクトに対して、次のように指定して、関連付けられた注文のアフィニティを作成します。 製品:1001 以内 {}
。 だから 注文 オブジェクトキーは次のように指定できます 注文_{製品:1001}. これにより、製品と注文が同じノード内に存在することが保証されます。
データ キャッシュでサポートされるデータ
データ キャッシュのためにキャッシュに保存されるオブジェクトは次のとおりです。
プリミティブデータ型
Note
この機能は以下でも利用できます NCache Professional.
NCache すべての.NETプリミティブデータ型をサポートします。
バイト/バイト | int / uint | short / ushort | 長い/長い | オブジェクト |
チャリオット | 文字列 | フロート | 10進数 | |
ブール | 日付時刻 | 期間 |
カスタムクラスオブジェクト
Note
この機能は以下でも利用できます NCache Professional.
データは、たとえば、任意のカスタムシリアル化可能なクラスオブジェクトにすることもできます。 プロダクト クラスオブジェクト。 カスタムオブジェクトデータ しなければなりません シリアル化可能、それ以外の場合 NCache シリアル化例外をスローします。
NCache カスタムオブジェクトをシリアル化するXNUMXつの方法を提供します。
ネイティブシリアル化:提供されている.NETを使用できます [シリアライズ可能] カスタムクラスの属性。
コンパクトなシリアル化: NCache カスタム オブジェクト用のカスタム シリアル化フレームワークを提供します。 このフレームワークは、登録されたクラスに対してコスト効率の高いシリアル化を動的に提供します。
NCacheのCacheItemオブジェクト
Note
この機能は以下でも利用できます NCache Professional.
データはにカプセル化することもできます NCache's キャッシュ項目 クラス。 CacheItem を使用すると、キャッシュされる値とともに追加のメタデータを追加できます。 このメタデータは、有効期限、依存関係などのアイテムのプロパティを定義します。
CacheItemのプロパティについて詳しく読むことができます こちら.
データ構造
NCache データがサーバー上で直接操作されるデータ構造の追加/更新を排他的にサポートするようになり、パフォーマンスが向上しました。 NCache 次のデータ構造のサポートを提供します。
のデータと同じように NCache、これらは、クエリ、ロック、期限切れなどが可能です。 キャッシュでのデータ構造の使用の詳細については、を参照してください。 キャッシュ内のデータ構造.
JSONの
NCache JSON形式でのキャッシュデータの追加/変更もサポートしています。 JSON は、カスタム オブジェクトを JSON として取得でき、JSON オブジェクトもカスタム オブジェクトとして取得できるため、データ取得に柔軟性をもたらします。 JSON では次がサポートされています。
CacheItem と同様に、JSON データはクエリ、ロック、期限切れなどを行うことができます。 JSON の使用について詳しくは、 NCache、 参照する データをJSONとしてキャッシュする.
も参照してください
キャッシュに接続する方法
キャッシュにデータを追加する
既存のキャッシュデータを取得する
キャッシュからデータを削除する
キャッシュを作成する