SuperAPI AI 工具集

redis

数据与分析

查看项目

更新于 10-15 21:48

技能介绍

用途:Redis 是开源内存数据结构存储系统,可用作数据库、缓存和消息代理。本技能按场景提供选型与操作指引:缓存加速、数据结构存储、消息队列、分布式锁、高可用集群、性能问题排查。

主要能力:覆盖九类数据结构——String(缓存、计数器、Session、分布式锁)、Hash(对象存储)、List(队列、时间线、日志)、Set(标签、去重)、ZSet(排行榜、延时队列、范围查询)、Bitmap(签到、布隆过滤)、HyperLogLog(UV 统计,约 0.81% 误差)、Geo(附近的人、地理围栏)、Stream(消息队列、消费组)。同时整理缓存读写与更新模式、缓存穿透/击穿/雪崩的应对思路、分布式锁(SET NX EX 与 Lua 解锁、Redlock)、Key 命名与 TTL 策略、Big Key 处理。

使用方式:按“明确场景→选择数据结构→确定持久化策略→部署架构”的顺序决策。持久化可选 RDB、AOF(appendfsync everysec)或混合持久化;部署可选单机、主从、Sentinel(建议 3 节点)、Cluster(6 节点起,16384 个 hash slot)。常用工具包括 redis-cli、redis-benchmark,集群可用 redis-cli --cluster create 等命令创建与检查。

适用场景:需要极低延迟键值存取、热点缓存、高并发计数器、排行榜/时间线/消息队列、分布式锁/限流/会话管理、实时分析、地理位置搜索、UV 统计。

限制:Redis 是内存数据库,不是关系型数据库替代品。不适合复杂 SQL 关联查询与事务性报表、需要完整 ACID 事务、外键约束与引用完整性、存储大文件或二进制数据、数据量远大于内存且不需高速访问的场景;全文搜索应使用 RediSearch,消息队列可考虑 RabbitMQ/Kafka。Cluster 仅支持 0 号数据库,多 key 操作需在同一 slot。具体版本、收费与平台信息暂未提供。