为了账号安全,请及时绑定邮箱和手机立即绑定

redis2.2和redis2.8的区别?

redis2.2和redis2.8的区别?

繁星点点滴滴 2018-09-28 15:11:39
redis2.2和redis2.8的区别
查看完整描述

1 回答

?
米脂

TA贡献1836条经验 获得超3个赞

根据Redis 两个版本的测试结果对比得出以下结论

一、Redis 2.6主从同步在网络闪断的情况下会自动开启新的端口进行重新链,同时会进行一下操作:

1、断开链接的从会向主发送SYNC命令
2、然后主fork进程导出rdb文件发送到从
3、从接收到完整的数据后,清空Redis内数据然后在从RDB中恢复
但是根据测试结果发现以下问题:
1、多个主从关系同时断开的时候,主导出RDB文件时,会占用大量内存
2、从接收到完整数据后,恢复数据的时候,会清空数据,这时候由于Redis数据量很大,目前10G左右内存恢复速度大约1分钟左右,这一分钟内,很多请求无法获取数据
3、在从RDB恢复数据的过程中,部分请求会被阻塞,导致请求超时(目前报警无法获取数据根次有关)
二、Redis 2.8.8 没有发现以上问题,因为Redis 2.8链接闪断重新连接后,从会从断开之前的主从同步进度开始继续同步,不会有全量恢复的问题
三、Redis 2.8 和 Redis 2.6 在进行save操作的时候,save过程中所有的请求都会被阻塞,导致前端请求失败,所以不要再查询的从上进行save操作

根据以上得出建议:

1、Redis 升级到 2.8 以上,保证数据主从同步时候的可用性
2、不要直接在Redis从或主上进行save操作,可以按王彬的建议在关键节点增加新的从用于save备份使用
3、建议优化Redis存储,单个端口存储数据不要过大,这样可以保证单个端口挂掉数据数据时候的速度,和影响面积

Redis 2.8和SSDB性能对比

SSDB 1.6.8.6
顺序写 : 1.645 ms/op 59.4 MB/s
随机写 : 1.679 ms/op 58.2 MB/s
顺序读 : 1.286 ms/op 75.9 MB/s
随机读 : 1.225 ms/op 79.7 MB/s
rpush : 1.546 ms/op 63.2 MB/s
lpop : 1.303 ms/op 74.9 MB/s

Redis 2.8.8
顺序写 : 1.617 ms/op 60.4 MB/s
随机写 : 1.214 ms/op 80.4 MB/s
顺序读 : 1.156 ms/op 84.5 MB/s
随机读 : 1.153 ms/op 84.7 MB/s
rpush : 1.222 ms/op 79.9 MB/s
lpop : 1.153 ms/op 84.7 MB/s

查看完整回答
反对 回复 2018-10-23
  • 1 回答
  • 0 关注
  • 857 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信