永久缓存,包括服务器重启和redis到磁盘功能

时间:2017-05-31 05:23:32

标签: laravel caching redis

laravel相关:

在laravel文档中,我们写了https://laravel.com/docs/5.4/cache

  

永远存储物品

     

forever方法可用于在缓存中存储项目   永久性。由于这些项目不会过期,因此必须手动完成   使用forget方法从缓存中删除:Cache :: forever('key',   '值');如果您使用的是Memcached驱动程序,则存储的项目   当缓存达到其大小限制时,可以删除“forever”。

重启怎么样? memcache会被擦除,那么“永远”呢?

所以永远并不意味着永远,但最终只会到下次重启/崩溃?

redis:

我听到很多人称赞“它可以存放到磁盘上”

如果服务器崩溃了怎么办?是目前存储在那里的缓存吗? redis会自动处理吗?可能不是。所以我真的不明白它有什么好处。 “redis可以存储到磁盘”是否是上述“永久”问题的解决方案?如果是的话,你能解释一下吗?

1 个答案:

答案 0 :(得分:1)

缓存:: forever('key','value')
它意味着存储价值,没有任何ttl(生存时间)。但是当缓存大小达到其指定的大小时,将删除先前存储的值。

<强> Redis的
如果你问redis。它将基于配置的值存储到磁盘。如果服务器崩溃了,那么如果您的磁盘文件没有损坏,您也可以通过重新启动它来查找旧数据。只有当redis空间的大小已满或者您为值设置了ttl时,才会删除redis中的旧数据。

相关问题