Redis 7.0带来了许多新特性和性能改进。以下是详细介绍:
- Redis Functions。一种新的通过服务端脚本扩展Redis的方式,与数据本身一起存储,相比Lua脚本,具有更低的开销,并支持RDB和AOF持久化。12
- Client-eviction。当Redis连接较多且每个连接的内存占用较大时,可以达到maxmemory的上限,可以通过配置maxmemory-clients来限制所有客户端的总内存使用量。15
- Multi-part AOF。AOF文件由一个变为多个,包括基本文件和增量文件,引入了一个清单文件用于跟踪文件及其创建和应用顺序。13
- ACL V2。提供了更细粒度的权限控制,包括基于key的权限设置。13
- Listpack。一种新的数据结构,替代了ziplist,提高了列表类型命令的效率和内存使用效率。12
- 新增和改进的命令。包括ZMPOP、BZMPOP、ZINTERCARD等Zset命令,SINTERCARD命令,LMPOP、BLMPOP等LIST命令。16
- RDB版本升级。RDB文件的版本升级为10,与之前的版本不再兼容,加载较旧的RDB文件时会将ziplist编码的key转为listpacks。3
- 性能和资源利用率优化。在内存、计算、网络和存储等多个方面进行了改进,提高了Redis的整体性能和稳定性。46
此外,Redis 7.0还引入了近50个新命令和选项,以支持这种演变并扩展Redis的现有功能。