Esta documentación ha sido traducida automáticamente por IA.
CacheManager se basa en node-cache-manager y proporciona funcionalidades de gestión de módulos de caché para NocoBase. Los tipos de caché integrados son:
Puede registrar y extender más tipos a través de la API.
Store: Define un método de almacenamiento en caché, que incluye un método de fábrica para crear cachés y otras configuraciones relacionadas. Cada método de caché tiene un identificador único que se proporciona durante el registro.
Los identificadores únicos para los dos métodos de caché integrados son memory y redis.
Método de fábrica de Store: Un método proporcionado por node-cache-manager y sus paquetes de extensión relacionados para crear cachés. Por ejemplo, 'memory' (proporcionado por defecto por node-cache-manager) y redisStore (proporcionado por node-cache-manager-redis-yet). Este método corresponde al primer parámetro del método caching de node-cache-manager.
Cache: Una clase encapsulada por NocoBase que proporciona métodos para utilizar la caché. Al usar la caché, usted opera sobre una instancia de Cache. Cada instancia de Cache tiene un identificador único que puede utilizarse como espacio de nombres para distinguir diferentes módulos.
constructor()constructor(options?: CacheManagerOptions)| Propiedad | Tipo | Descripción |
|---|---|---|
defaultStore | string | El identificador único para el tipo de caché predeterminado. |
stores | Record<string, StoreOptions> | Registra los tipos de caché. La clave es el identificador único para el tipo de caché, y el valor es un objeto que contiene el método de registro y la configuración global para el tipo de caché. En node-cache-manager, el método para crear una caché es await caching(store, config). El objeto que debe proporcionar aquí es StoreOptions. |
| Propiedad | Tipo | Descripción |
|---|---|---|
store | memory | FactoryStore<Store, any> | El método de fábrica del store, que corresponde al primer parámetro de caching. |
close | (store: Store) => Promise<void> | Opcional. Si se trata de un middleware como Redis que requiere una conexión, debe proporcionar un método de callback para cerrar la conexión. El parámetro de entrada es el objeto devuelto por el método de fábrica del store. |
[key: string] | any | Otras configuraciones globales del store, que corresponden al segundo parámetro de caching. |
options predeterminadasEl parámetro options se fusionará con las opciones predeterminadas. Las propiedades ya presentes en las opciones predeterminadas pueden omitirse. Por ejemplo:
registerStore()Registra un nuevo método de almacenamiento en caché. Por ejemplo:
registerStore(options: { name: string } & StoreOptions)createCache()Crea una caché. Por ejemplo:
createCache(options: { name: string; prefix?: string; store?: string; [key: string]: any }): Promise<Cache>| Propiedad | Tipo | Descripción |
|---|---|---|
name | string | Identificador único para la caché. |
store | string | Identificador único para el store. |
prefix | string | Opcional, prefijo para las claves de caché. |
[key: string] | any | Otros elementos de configuración personalizada del store. |
Si se omite store, se utilizará defaultStore. En este caso, el método de almacenamiento en caché cambiará según el método de caché predeterminado del sistema.
Cuando no hay configuraciones personalizadas, se devuelve el espacio de caché predeterminado creado por la configuración global y compartido por el método de caché actual. Se recomienda añadir un prefix para evitar conflictos de claves.
Consulte Cache
getCache()Obtiene la caché correspondiente.
getCache(name: string): CacheflushAll()Reinicia todas las cachés.
close()Cierra todas las conexiones de middleware de caché.