mcpField
I
ioredis

ioredis

github.com/jgamaraalv开发1557 次安装35 周前更新
代码仓库

关于 ioredis

面向使用 ioredis v5 的开发者的参考技能,介绍 TypeScript Redis 客户端的常用操作、连接配置与进阶模式。

主要功能

  1. 01Redis 连接配置
  2. 02管道与事务
  3. 03Pub/Sub 与 Lua 脚本
  4. 04扫描与流处理模式
  5. 05Cluster 和 Sentinel 指引

适用场景

  1. 01配置 Redis 连接
  2. 02选择多命令操作模式
  3. 03使用 Pub/Sub 或 Lua 脚本
  4. 04配置 Redis Cluster 或 Sentinel

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jgamaraalv/ts-dev-kit --skill ioredis

安装后在 Claude Code 中输入/ioredis确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
advanced-patterns.md
cluster-sentinel.md
connection-options.md
core-api.md

详细介绍

ioredis v5 — Node.js Redis 客户端

ioredis v5.x。需要 Node.js >= 12、Redis >= 2.6.12。100% 使用 TypeScript。

<quick_reference>

关键:导入方式

// CORRECT — named import (required for NodeNext / moduleResolution: "nodenext")
import { Redis } from "ioredis";

// For Cluster:
import { Redis, Cluster } from "ioredis";

快速参考

操作代码
连接new Redis() or new Redis(6379, "host") or new Redis("redis://...")
获取/设置await redis.set("key", "val") / await redis.get("key")
管道await redis.pipeline().set("a","1").get("a").exec()
事务await redis.multi().set("a","1").get("a").exec()
发布/订阅sub.subscribe("ch") / sub.on("message", cb) / pub.publish("ch", msg)
Lua 脚本redis.defineCommand("name", { numberOfKeys: 1, lua: "..." })
扫描redis.scanStream({ match: "prefix:*", count: 100 })
平滑关闭await redis.quit()
强制关闭redis.disconnect()

</quick_reference>

常见注意事项

  1. 命名导入:使用 NodeNext 解析时,始终使用 import { Redis } from "ioredis"
  2. 发布/订阅隔离:已订阅的客户端无法运行其他命令——请使用单独的实例
  3. maxRetriesPerRequest:默认值为 20。设为 null 可无限重试(BullMQ 要求)
  4. 管道错误:pipeline.exec() 永远不会拒绝;错误位于每个结果的 [0] 位置
  5. showFriendlyErrorStack:会带来性能开销——切勿在生产环境中启用
  6. 集群管道:管道中的所有键都必须哈希到由同一节点提供服务的槽
  7. enableAutoPipelining:可提升 35-50% 的吞吐量,可安全地全局启用

何时加载参考文档

需求参考文件
连接设置、RedisOptions、TLS、retryStrategy、生命周期references/connection-options.md
核心 API:管道、事务、发布/订阅、Lua 脚本、扫描、事件references/core-api.md
流、自动管道、转换器、二进制数据、错误处理、调试references/advanced-patterns.md
Redis Cluster 设置、ClusterOptions、Sentinel 配置、故障转移references/cluster-sentinel.md

评论

支持 Markdown