代码 Redis 8.2 GA:XACKDEL 合并 XACK+XDEL,短字符串省 25%–37% 内存

2026-09-19 21:02:11

Redis 8.2 GA:XACKDEL 合并 XACK+XDEL,短字符串省 25%–37% 内存

Redis 8.2 于 2025-08-04 GA,在 8.0 基础上新增了若干命令并做了针对性优化。

Streams:XACKDEL 与 XDELEX

  • XACKDEL:一条命令完成 XACK + XDEL,按条件删除。
  • XDELEXXDEL 的扩展。
  • 两者与 XDEL 共用同一组选项:KEEPREF(删条目但保留各消费组 PEL 里的引用)、DELREF(删条目并清掉所有消费组 PEL 中的引用,含悬挂引用)、ACKED(仅删除已被所有消费组读取并 ack 的条目)。
  • XADDXTRIM 也扩展了同样的选项,KEEPREF 为默认,无破坏性变更。

Bitmap:BITOP 新增 4 个逻辑算子

BITOP 新增四个算子:

  • DIFF:在 X 不在任何 Y
  • DIFF1:在一个或多个 Y 不在 X
  • ANDOR:在 X 且在至少一个 Y
  • ONE:恰在给定 bitmap 之一

以前这类运算要写脚本或拼多个命令。

集群、向量、keyspace 通知

  • CLUSTER SLOT-STATS:返回每 slot 的 key 数、CPU 时间、网络进出流量。
  • 向量:VSIM 新增 IN 过滤算子;新增 SVS-VAMANA 向量索引类型,支持压缩(面向 Intel 优化,省内存)。
  • keyspace 通知:新增 OVERWRITTENTYPE_CHANGED 事件。

性能与内存

  • kvobj 统一数据结构,把 key 名、短值、可选 TTL 打包进一次内存分配:短字符串省 25%–37% 内存;JSON 数字内联省 25%–67%。
  • BITCOUNT 快 35%;LINSERT / LREM / LPOS 等延迟降 25%+;8 个 I/O 线程下吞吐最多 +49%。
  • 兼容 jedis、lettuce、go-redis、node-redis、redis-py。

安全修复

  • CVE-2025-32023(HyperLogLog 越界写)
  • CVE-2025-48367

参考

复制全文 生成海报 Redis Streams BITOP 缓存

推荐文章

程序员茄子在线接单