redis4.0新特性

Redis 4.0 引入了多项新特性,包括Redis Modules System扩展功能,Partial Replication v2(PSYNC2)改进复制性能,异步删除(Lazy Free)提高效率,混合RDB+AOF格式提升持久化速度,以及新增的MEMORY命令和内存策略等,进一步增强了Redis的稳定性和性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、  Redis modules system。redis允许开发者开发自定义模块,来扩展redis功能和新的数据类型。

 

2、  Partial Replication version 2(PSYNC2):

        2.1、PSYNC1因为网络中断或者阻塞导致主从中断,恢复后必须重新到主节点dump一份全量数据同步到从节点。PSYNC2再中断恢复后只需要同步复制延迟的那部分数据。

        2.2、PSYNC1在重启从节点需要重新全量同步数据。PSYNC2只部分同步增量数据。

        2.3、在PSYNC1 当复制为链式复制的时候,如 A>B>C 主节点为A。当A出现问题,C节点不能正常复制B节点的数据。当提升B为主节点,C需要全量同步B的数据。在PSYNC2:PSYNC2解决了链式复制之间的关联性。A出现问题不影响C节点,B提升为主C不需要全量同步。

        2.4、在使用星形复制。如一主两从。A>B , A>C  主节点为A。当A出现问题,B提升为主节点,C 重新指向主节点B。使用同步机制PSYNC2,C节点只做增量同步即可。在使用sentinel故障转移可以较少数据重新同步的延迟时间,避免大redis同步出现的网络带宽占满。

3、  cache回收增强。算法更新,提高精度和效率。

4、  Lazy Free

       4.1、异步 DEL、FLUSHDB和FLUSHALL(lazy free主动删除的实现)。现在可以在其他线程非阻塞的删除数据,通过UNLINK命令实现(替代DEL)。同样的,为了让整个数据集或单个数据库异步释放,`FLUSHALL`和`FLUSHDB` 提供了ASYNC 选项,使用该选项后将异步完成,不阻塞server。

      

       4.2、lazy free应用于被动删除中,目前有4种场景,对应一下配置,默认是关闭的。

      

5、  混合RDB + AOF格式。 如果启用,则在重写AOF文件时使用新格式:重写使用更紧凑和更快的方式来生成RDB格式,并将AOF流附加到文件。 这允许在使用AOF持久性时更快地重写和重新加载。

 

6、  新添加MEMORY 命令。可以使用不一样的方式执行内存分析,方便内排查内存相关的问题故障等,比如可以报告单个key的内存使用量,与INFO命令提供的内容相比,更深入地报告Redis内存使用情况。

 

7、  Redis Cluster support for NAT / Docker.Redis 4.0 将兼容 NAT和Docker,具体的使用方法在 redis.conf 。

 

8、  更节约内存,存储同样多的数据,需要更少的内存空间,减少的值取决于存储数据类型的种类。

9、  可以做内存碎片整理,逐步回收内存。当使用Jemalloc内存分配方案的时候,redis可以使用在线内存整理。(通过参数设置是否开启)

 

10、 Redis Cluster 的故障检测方式改变,node之间的通讯减少。

11、 慢日志记录客户端来源IP地址,这个小功能对于故障排查很有用处。

        

12、 交换数据库SWAPDB

        

13、新增两种内存策略

        

         基于LFU,可以获取key的访问频度:

        

         基于LFU机制,用户可以使用 scan + object freq 来发现热点key,当然redis也一起发布了更好用的工具——redis-cli,使用实例如下所示。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值