NestJS+Redis实现缓存步骤详解

 更新时间:2021年08月24日 09:13:16   作者:老胡Andy  
这篇文章主要介绍了NestJS+Redis实现缓存,本文分步骤给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

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,验证结果:

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

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

相关文章

  • Redis中什么是Big Key(大key)问题?如何解决Big Key问题?

    Redis中什么是Big Key(大key)问题?如何解决Big Key问题?

    大key并不是指key的值很大,而是key对应的value很大,下面这篇文章主要给大家介绍了Redis中什么是Big Key(大key)问题?如何解决Big Key问题的相关资料,需要的朋友可以参考下
    2023-03-03
  • Redis 事务知识点相关总结

    Redis 事务知识点相关总结

    这篇文章主要介绍了Redis 事务相关总结,帮助大家更好的理解和学习使用Redis,感兴趣的朋友可以了解下
    2021-03-03
  • redis的hash类型操作方法

    redis的hash类型操作方法

    Hash 是一个 String 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象,这篇文章主要介绍了redis的hash类型的详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • Redis实现短信验证码登录的示例代码

    Redis实现短信验证码登录的示例代码

    本文主要介绍了基于Redis如何实现短信验证码登录功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 在Centos 8.0中安装Redis服务器的教程详解

    在Centos 8.0中安装Redis服务器的教程详解

    由于考虑到linux服务器的性能,所以经常需要把一些中间件安装在linux服务上,今天通过本文给大家介绍下在Centos 8.0中安装Redis服务器的详细过程,感兴趣的朋友一起看看吧
    2022-03-03
  • Redis中ziplist压缩列表的实现

    Redis中ziplist压缩列表的实现

    本文主要介绍了Redis中ziplist压缩列表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • redis性能优化之生产中实际遇到的问题及排查总结

    redis性能优化之生产中实际遇到的问题及排查总结

    这篇文章主要介绍了redis性能优化之生产中实际遇到的问题及排查总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • Redis如何在项目中合理使用经验分享

    Redis如何在项目中合理使用经验分享

    这篇文章主要给大家介绍了关于Redis如何在项目中合理使用的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Redis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • Redis五大基本数据类型及对应使用场景总结

    Redis五大基本数据类型及对应使用场景总结

    Redis有五种基本数据类型,分别是字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set),这些基本数据类型使得Redis具备了丰富的数据结构和功能,适用于各种不同的应用场景,本文就给大家详细的介绍一下这五大类型
    2023-08-08
  • redis keys与scan命令的区别说明

    redis keys与scan命令的区别说明

    这篇文章主要介绍了redis keys与scan命令的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03

最新评论