欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

NestJS+Redis实现缓存步骤详解

程序员文章站 2022-03-12 22:39:34
nestjs的缓存模块天生支持redis等缓存机制。以下通过一个示例,说明如何在nestjs中操作redis。步骤如下:先安装运行redis服务,步骤参见链接新建nestjs项目:nest new [...

nestjs的缓存模块天生支持redis等缓存机制。以下通过一个示例,说明如何在nestjs中操作redis。步骤如下:

先安装运行redis服务,步骤参见链接

新建nestjs项目:
nest new [项目名称]

安装cache相关依赖

npm install cache-manager
npm install -d @types/cache-manager
npm install cache-manager-redis-store --save

注册redis store
打开src->app.module.ts,这里假设已经在本地安装启动了redis服务

import { module, cachemodule } from '@nestjs/common';
import * as redisstore from 'cache-manager-redis-store';

imports: [
  cachemodule.register({
    store: redisstore,
    host: 'localhost',
    port: 6379,
  }),
],

打开src->app.controller.ts, 使用redis缓存服务

import {
  controller,
  get,
  res,
  req,
  inject,
  cache_manager,
} from '@nestjs/common';
import { cache } from 'cache-manager';

fakestring = 'hello world!';

@get('cache-test')
async setgetsimplestring() {
  const value = await this.cachemanager.get('my-string');
  if (value) {
    return {
      data: value,
      loadsfrom: 'redis cache',
    };
  }
  await this.cachemanager.set('my-string', this.fakestring, { ttl: 20 });
  return {
    data: this.fakestring,
    loadsfrom: 'fake database',
  };
}

最后,访问接口,打开redis客户端工具redisnav,验证结果:

NestJS+Redis实现缓存步骤详解

参考:
https://www.learmoreseekmore.com/2020/12/nestjs-redis-cache.html

到此这篇关于nestjs+redis实现缓存的文章就介绍到这了,更多相关redis实现缓存内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!