Ich versuche also, das Caching in meinem NestJs -Projekt mit Redis als Geschäft zu verwenden, aber ich habe viele Probleme mit Implementierungsfehlern.
import { CACHE_MANAGER } from '@nestjs/cache-manager'
import { Inject, Injectable } from '@nestjs/common'
import { Cache } from 'cache-manager'
@Injectable()
export class ItemService {
constructor(@Inject(CACHE_MANAGER) private readonly _cache: Cache) {}
async getItem(id: string) {
const cachedUser = await this._cache.get(`item_${id}`)
if (cachedUser) {
return cachedUser
}
const item = {
id: 50,
name: 'item',
} /**This would be a database call */
await this._cache.set(`item_${id}`, item, 60) // Cache for 60 seconds
return item
}
}
< /code>
Dies ist ein einfacher Dienst, in dem ich versuche, Cache zu verwenden. Das Problem, auf das ich immer wieder lasse, ist jedoch sicher, dass das Argument "Cache_Manager" bei Index [0] im ItemModule Context
verfügbar ist. Ich habe Mycachemodule in die ItemModule -Importe hinzugefügt und erhalten immer noch den gleichen Fehler.>
Ich versuche also, das Caching in meinem NestJs -Projekt mit Redis als Geschäft zu verwenden, aber ich habe viele Probleme mit Implementierungsfehlern.[code]import { Module } from '@nestjs/common' import { CacheModule } from '@nestjs/cache-manager' import { ConfigModule, ConfigService } from '@nestjs/config' import * as redisStore from 'cache-manager-redis-store'
@Module({ imports: [ CacheModule.registerAsync({ imports: [ConfigModule], useFactory: async (configService: ConfigService) => ({ isGlobal: true, store: redisStore, host: configService.get('cache.host') || 'localhost', port: configService.get('cache.port') || 6379, ttl: 60, }), inject: [ConfigService], }), ], }) export class MyCacheModule {} [/code] Ich importiere dies in meine app.module.ts Einfach als MyCachemodule .[code]import { CACHE_MANAGER } from '@nestjs/cache-manager' import { Inject, Injectable } from '@nestjs/common' import { Cache } from 'cache-manager'
const item = { id: 50, name: 'item', } /**This would be a database call */
await this._cache.set(`item_${id}`, item, 60) // Cache for 60 seconds
return item } } < /code> Dies ist ein einfacher Dienst, in dem ich versuche, Cache zu verwenden. Das Problem, auf das ich immer wieder lasse, ist jedoch sicher, dass das Argument "Cache_Manager" bei Index [0] im ItemModule Context [/code] verfügbar ist. Ich habe Mycachemodule in die ItemModule -Importe hinzugefügt und erhalten immer noch den gleichen Fehler.>
Ich arbeite mit einer Klasse namens CachedrandomiterDataset, die einen asynchronen Thread verwendet, um Daten aus einem Datensatz in einen Cache zu laden. Der Cache soll mit Daten gefüllt, gemischt...
Ich habe ein Setup, bei dem ich zwei Server habe, von denen jeder seinen eigenen lokalen Cache für eine Karte verwaltet. Bei der Initialisierung wird die Karte zwischengespeichert und jedes Mal, wenn...
Ich verwende Spring Boot 3.x mit Redis und Redisson als Second-Level-Cache. Während die Anwendung ausgeführt wird, funktioniert alles wie erwartet. Wenn die Anwendung jedoch gestoppt wird, bleiben...