🗒️NestJs 集成Redis
2024-4-17
| 2024-10-24
0  |  阅读时长 0 分钟
date
Apr 17, 2024 02:33 AM
type
status
slug
summary
tags
category
updated
Oct 24, 2024 12:52 PM
icon
password

前言

在日常开发中,需要处理一些高并发的请求或者处理用户邮件认证等一些场景。那么就需要Redis了。
Redis 是一个开源的内存中数据结构存储系统,它可以用作数据库、缓存和消息中间件。
 

安装包

按照需要的包
这里我们使用 ioredis,因为它是一个健壮的、功能全面的 Redis 客户端,与 nest-modules相关联。
 

编写Redis服务模块

新建一个文件夹Redis,然后里面新建redis.module.ts文件,写入如下内容。
之后在app.module.ts中导入

实现读取配置

需要先安装nestjs/config

使用案例

在需要使用到地方,例如我需要在users.service.ts中的接口使用
然后在对应的controller层调用函数。
 

扩展:接口访问限制频率

为了防止有人故意刷接口,或者对过多的请求搞奔溃应用,这里使用Redis做接口的限制
 

定义限流拦截器

 

项目中使用限流拦截器

将这个拦截器中间件引入到你的应用中,可以在对应的控制器或全局应用中注册。
  1. 全局拦截
    1. 局部拦截
      1. 我这里为了统一方便就引入在全局上
         
    <ins/>
     
  2. TypeScript
  3. 使用 CSS 混合模式实现动态反差色效果Vue3+vite 部署到Vercel
    Loading...