このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
CacheManager は node-cache-manager をベースにしており、NocoBase にキャッシュモジュールの管理機能を提供します。組み込みのキャッシュタイプは以下の通りです。
node-cache-manager がデフォルトで提供する lru-cachenode-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)| 属性 | 型 | 説明 |
|---|---|---|
defaultStore | string | デフォルトのキャッシュタイプに対する一意の識別子です。 |
stores | Record<string, StoreOptions> | キャッシュタイプを登録します。キーはキャッシュタイプの一意の識別子で、値はキャッシュタイプの登録メソッドとグローバル設定を含むオブジェクトです。node-cache-manager では、キャッシュを作成するメソッドは await caching(store, config) です。ここで提供する必要があるオブジェクトは StoreOptions です。 |
| 属性 | 型 | 説明 |
|---|---|---|
store | memory | FactoryStore<Store, any> | ストアファクトリメソッドで、caching の最初の引数に対応します。 |
close | (store: Store) => Promise<void> | オプションです。Redisのように接続を確立する必要があるミドルウェアの場合、接続を閉じるためのコールバックメソッドを提供する必要があります。引数にはストアファクトリメソッドが返すオブジェクトが入ります。 |
[key: string] | any | その他のグローバルストア設定で、caching の2番目の引数に対応します。 |
optionsoptions パラメータはデフォルトのオプションとマージされます。デフォルトのオプションに既に存在するプロパティは省略できます。例:
registerStore()新しいキャッシュ方式を登録します。例:
registerStore(options: { name: string } & StoreOptions)createCache()キャッシュを作成します。例:
createCache(options: { name: string; prefix?: string; store?: string; [key: string]: any }): Promise<Cache>| 属性 | 型 | 説明 |
|---|---|---|
name | string | キャッシュの一意の識別子です。 |
store | string | ストアの一意の識別子です。 |
prefix | string | オプション。キャッシュキーのプレフィックスです。 |
[key: string] | any | ストアに関連するその他のカスタム設定項目です。 |
store を省略した場合、defaultStore が使用されます。この場合、キャッシュ方式はシステムのデフォルトキャッシュ方式の変更に従って変わります。
カスタム設定がない場合、グローバル設定によって作成され、現在のキャッシュ方式で共有されるデフォルトのキャッシュ空間が返されます。キーの衝突を避けるために prefix を追加することをお勧めします。
Cache を参照してください。
getCache()対応するキャッシュを取得します。
getCache(name: string): CacheflushAll()すべてのキャッシュをリセットします。
close()すべてのキャッシュミドルウェア接続を閉じます。