laravel相关:
在laravel文档中,我们写了https://laravel.com/docs/5.4/cache
永远存储物品
forever方法可用于在缓存中存储项目 永久性。由于这些项目不会过期,因此必须手动完成 使用forget方法从缓存中删除:Cache :: forever('key', '值');如果您使用的是Memcached驱动程序,则存储的项目 当缓存达到其大小限制时,可以删除“forever”。
重启怎么样? memcache会被擦除,那么“永远”呢?
所以永远并不意味着永远,但最终只会到下次重启/崩溃?
redis:
我听到很多人称赞“它可以存放到磁盘上”
如果服务器崩溃了怎么办?是目前存储在那里的缓存吗? redis会自动处理吗?可能不是。所以我真的不明白它有什么好处。 “redis可以存储到磁盘”是否是上述“永久”问题的解决方案?如果是的话,你能解释一下吗?
答案 0 :(得分:1)
缓存:: forever('key','value')
它意味着存储价值,没有任何ttl(生存时间)。但是当缓存大小达到其指定的大小时,将删除先前存储的值。
<强> Redis的强>
如果你问redis。它将基于配置的值存储到磁盘。如果服务器崩溃了,那么如果您的磁盘文件没有损坏,您也可以通过重新启动它来查找旧数据。只有当redis空间的大小已满或者您为值设置了ttl时,才会删除redis中的旧数据。