站长之家字体,站群cms,网络科技是做什么的,重庆做网站的公司redis怎么做到双写一致性呢#xff1f;
这个是要分情况的 业务要是对一致性要求不是很高的话可以使用延时双删#xff0c;要强一致的话需要双写一致性。 Redis数据持久化#xff1f;
redis是有两种数据持久化方式的#xff0c;一种RDB一种AOF
rdb是redis数据快照#x…redis怎么做到双写一致性呢
这个是要分情况的 业务要是对一致性要求不是很高的话可以使用延时双删要强一致的话需要双写一致性。 Redis数据持久化
redis是有两种数据持久化方式的一种RDB一种AOF
rdb是redis数据快照它是把内存中所有记录保存在磁盘中的。当redis实例出现故障后从磁盘读取快照文件进行数据恢复aof采用的是一种刷盘策略可以设置everysec每秒进行一次刷盘记录操作命令当redis出现故障后会根据记录的命令重新执行达到数据恢复的效果。 数据过期策略
有两种 惰性删除和定期删除
惰性删除设置key的过期时间后不用去管它等到下次需要这key的时候然后检查是否过期过期然后进行删除。如果下次一直不使用key那么就会一直存在内存中不会被释放定期删除每隔一段时间会对一些key进行检查删除里边过期的key。一般是惰性删除和定期删除配合使用。 数据淘汰策略
当redis中内存不够用时再向redis中添加新的key那么redis就会按照某一种规则将内存中的数据删除掉就称为内存淘汰策略。
redis支持8种不同策略来选择要删除的key;
noeviction: 不淘汰任何key但是内存满时不允许写入新数据默认就是这种策略volatile-ttl:对设置了过期时间的key比较key剩余的ttl值值越小越先被淘汰allkeys-random: 对全体key随机进行淘汰volatile-random对设置了过期时间的key随机进行淘汰allkeys-lru:对全体key基于LRU算法进行淘汰最少使用时间volatile-lru:对设置了过期时间的key基于LRU算法进行淘汰allkeys-lfu:对全体key基于LFU算法进行淘汰最少使用频率volatile-lfu:对设置了过期时间的key基于LFU算法进行淘汰 Redis分布式锁