【发布时间】:2017-10-31 18:13:04
【问题描述】:
laravel 相关:
在 laravel 文档中,我们写了 https://laravel.com/docs/5.4/cache
永久保存物品
forever 方法可用于在缓存中存储项目 永久性。由于这些项目不会过期,因此必须手动 使用忘记方法从缓存中删除: Cache::forever('key', '价值');如果您使用的是 Memcached 驱动程序,则存储的项目 当缓存达到其大小限制时,“永远”可能会被删除。
重启呢? memcache 会被清除,那么“forever”呢?
所以永远并不意味着永远,但最终只是直到下一次重启/崩溃?
redis 呢:
我听到很多人称赞“IT CAN STORE TO DISK”
如果服务器崩溃了怎么办?缓存当前也存储在那里吗? redis会自动处理吗?可能不是。所以我真的不明白它有什么好处。 “redis 可以存储到磁盘”是上述“永远”问题的解决方案吗?如果是,你能解释一下怎么做吗?
【问题讨论】:
-
如果您使用缓存来持久化数据,那么您应该考虑更改您的应用程序设计。根据定义,缓存应该是临时的,并且如果它无效也不应该破坏应用程序。如果您将某些内容永久存储在缓存中,那么它就不是缓存,而是数据存储。