ruby-on-rails - Rails 缓存的默认到期时间是多少?

标签 ruby-on-rails ruby-on-rails-3 caching

我做了一些谷歌搜索,找不到这个问题的答案。 Rails 允许为其缓存指定到期时间,如下所示:

Rails.cache.fetch("my_var", :expires_in => 10.seconds)

但是如果我什么都不指定会发生什么:
Rails.cache.fetch("my_var")

永不过期?有默认值吗?如何明确定义永不过期的东西?

最佳答案

这实际上取决于您使用的缓存存储。 Rails 提供了几种,其中最受欢迎的是 Memcached . Memcached 的主要特性之一是它 automatically expires old unused records ,所以你可以忘记 :expire 选项。

其他 Rails 缓存存储,如内存存储或 redis 存储将不会过期,除非您明确指定何时这样做。

More about how cache key expiration works in Rails.

关于ruby-on-rails - Rails 缓存的默认到期时间是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14404584/

相关文章:

ruby-on-rails - 具有多个用于提交的 Controller 操作的 form_for

sql - rails 参与!错误(无法批量分配 protected 属性 : user)

caching - 读取文件内容时出错-MapReduce

java - 缓存大量有序集合

ruby-on-rails - Rails 应用程序无法连接到 PostgreSQL

ruby-on-rails - 使用 Carrierwave 和 Fog 将 Heroku 上的图像上传到 S3 时出现 403 错误

ruby-on-rails - 关于将实例变量传递给 redirect_to 方法的困惑。正如 Rails 指南中所见

ruby-on-rails - 从 Windows-1252 到 UTF-8 的转换中的 "\x9D"到 UTF-8

ruby-on-rails - 在 Rails 3.2.3 中呈现 text_area 时出现额外的空格

mongodb - 查询 MongoDB 比 Redis 快吗?