Dit document is vertaald door AI. Voor onnauwkeurigheden, raadpleeg de Engelse versie
CacheManager is gebaseerd op node-cache-manager en biedt NocoBase functionaliteit voor het beheer van cachemodules. De ingebouwde cachetypen zijn:
Meer typen kunnen via de API worden geregistreerd en uitgebreid.
Store: Definieert een cachingmethode, inclusief een factory-methode voor het aanmaken van caches en andere gerelateerde configuraties. Elke cachingmethode heeft een unieke identificatie die wordt opgegeven tijdens de registratie.
De unieke identificaties voor de twee ingebouwde cachingmethoden zijn memory en redis.
Store Factory Methode: Een methode die wordt geleverd door node-cache-manager en gerelateerde extensiepakketten voor het aanmaken van caches. Bijvoorbeeld 'memory' standaard geleverd door node-cache-manager, en redisStore geleverd door node-cache-manager-redis-yet. Dit komt overeen met de eerste parameter van de caching-methode in node-cache-manager.
Cache: Een door NocoBase ingekapselde klasse die methoden biedt voor het gebruik van de cache. Wanneer u de cache daadwerkelijk gebruikt, werkt u met een instantie van Cache. Elke Cache-instantie heeft een unieke identificatie, die kan worden gebruikt als een namespace om verschillende modules te onderscheiden.
constructor()constructor(options?: CacheManagerOptions)| Eigenschap | Type | Beschrijving |
|---|---|---|
defaultStore | string | De unieke identificatie voor het standaard cachetype. |
stores | Record<string, StoreOptions> | Registreert cachetypen. De sleutel is de unieke identificatie voor het cachetype, en de waarde is een object dat de registratiemethode en globale configuratie voor het cachetype bevat. In node-cache-manager is de methode om een cache aan te maken await caching(store, config). Het hier te leveren object is StoreOptions. |
| Eigenschap | Type | Beschrijving |
|---|---|---|
store | memory | FactoryStore<Store, any> | De store factory-methode, overeenkomend met de eerste parameter van caching. |
close | (store: Store) => Promise<void> | Optioneel. Voor middleware zoals Redis die een verbinding vereist, moet een callback-methode worden opgegeven om de verbinding te sluiten. De invoerparameter is het object dat wordt geretourneerd door de store factory-methode. |
[key: string] | any | Andere globale store-configuraties, overeenkomend met de tweede parameter van caching. |
optionsDe options-parameter wordt samengevoegd met de standaardopties. Eigenschappen die al aanwezig zijn in de standaardopties kunnen worden weggelaten. Bijvoorbeeld:
registerStore()Registreert een nieuwe cachingmethode. Bijvoorbeeld:
registerStore(options: { name: string } & StoreOptions)createCache()Maakt een cache aan. Bijvoorbeeld:
createCache(options: { name: string; prefix?: string; store?: string; [key: string]: any }): Promise<Cache>| Eigenschap | Type | Beschrijving |
|---|---|---|
name | string | Unieke identificatie voor de cache. |
store | string | Unieke identificatie voor de store. |
prefix | string | Optioneel, prefix voor cache-sleutels. |
[key: string] | any | Andere aangepaste configuratie-items gerelateerd aan de store. |
Als store wordt weggelaten, wordt defaultStore gebruikt. In dit geval zal de cachingmethode veranderen afhankelijk van de standaard cachingmethode van het systeem.
Wanneer er geen aangepaste configuraties zijn, retourneert het de standaard cache-ruimte die is aangemaakt door de globale configuratie en wordt gedeeld door de huidige cachingmethode. Het wordt aanbevolen om een prefix toe te voegen om sleutelconflicten te voorkomen.
Zie Cache
getCache()Haalt de corresponderende cache op.
getCache(name: string): CacheflushAll()Reset alle caches.
close()Sluit alle cache-middleware verbindingen.