有提过一个问题http://segmentfault.com/q/1010000004340655?_ea=575030,回答的少没太能明白。
我重新描述下,有的朋友说内存满了,旧数据会删除,硬盘上的也自动没了,如果这样的逻辑来说,他并不是持久化啊?比如:你有一个KEY,开始的时候也同步到硬盘了,但是后期有更多数据内存满后REDIS自动把这个KEY删除了,哪么下次你GET这个KEY的时候,他会取硬盘读吗?(持久化方式是AOF)
如果设置了内存回收机制,的确会在内存满了以后删除旧数据,这样再持久化时,磁盘里的持久化的相应数据也会删除。但持久化仅仅是指把数据从内存写入磁盘而已,举个例子来说,数据存入MySQL我们也会称之为持久化,但你删除数据库里一条数据后,数据库里也会少一条记录。
另外Redis持久化应该不提供查询功能,也就是说不存在说内存查不到,去查磁盘这一说。持久化的数据会同步到内存中,如果内存中不存在,磁盘中理论上也应该不存在。
你原贴我有回答的,里面附的链接,你进去仔细看看应该就能明白了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。