CacheManager
CacheManager
概要
CacheManager は node-cache-manager をベースにしており、NocoBase にキャッシュモジュールの管理機能を提供します。組み込みのキャッシュタイプは以下の通りです。
- memory -
node-cache-managerがデフォルトで提供するlru-cache - redis -
node-cache-manager-redis-yetがサポートする機能
さらに多くのタイプをAPIを通じて登録・拡張することができます。
概念
-
ストア (Store): キャッシュの作成ファクトリメソッドやその他の関連設定を含む、キャッシュ方式を定義します。各キャッシュ方式には、登録時に提供される一意の識別子があります。 組み込みの2つのキャッシュ方式に対応する一意の識別子は、
memoryとredisです。 -
ストアファクトリメソッド (Store Factory Method):
node-cache-managerおよび関連する拡張パッケージによって 提供される、キャッシュを作成するためのメソッドです。例えば、node-cache-managerがデフォルトで提供する'memory'や、node-cache-manager-redis-yetが提供するredisStoreなどです。これは、node-cache-managerのcachingメソッドの最初の引数に相当します。 -
キャッシュ (Cache): NocoBase がカプセル化したクラスで、キャッシュを使用するための関連メソッドを提供します。実際にキャッシュを使用する際は、
Cacheのインスタンスを操作します。各Cacheインスタンスには一意の識別子があり、異なるモジュールを区別するための名前空間として使用できます。
クラスメソッド
constructor()
シグネチャ
constructor(options?: CacheManagerOptions)
型定義
詳細
CacheManagerOptions
StoreOptions
デフォルトの options
options パラメータはデフォルトのオプションとマージされます。デフォルトのオプションに既に存在するプロパティは省略できます。例:
registerStore()
新しいキャッシュ方式を登録します。例:
シグネチャ
registerStore(options: { name: string } & StoreOptions)
createCache()
キャッシュを作成します。例:
シグネチャ
createCache(options: { name: string; prefix?: string; store?: string; [key: string]: any }): Promise<Cache>
詳細
options
store を省略した場合、defaultStore が使用されます。この場合、キャッシュ方式はシステムのデフォルトキャッシュ方式の変更に従って変わります。
カスタム設定がない場合、グローバル設定によって作成され、現在のキャッシュ方式で共有されるデフォルトのキャッシュ空間が返されます。キーの衝突を避けるために prefix を追加することをお勧めします。
Cache
Cache を参照してください。
getCache()
対応するキャッシュを取得します。
シグネチャ
getCache(name: string): Cache
flushAll()
すべてのキャッシュをリセットします。
close()
すべてのキャッシュミドルウェア接続を閉じます。

