dan*_*joo 7 ruby caching ruby-on-rails ruby-on-rails-3
rails中基于文件的缓存的文档说:
请注意,除非您定期清除旧条目,否则缓存将增长,直到磁盘已满.
不幸的是,它没有提供有关如何定期清除旧条目的任何信息.为:expires_in
工作设置合适的值还是在清除缓存后还有其他一些黑魔法?
此外,该文档提供了一个限制基于内存的缓存大小的选项:
config.cache_store = :memory_store, { size: 64.megabytes }
Run Code Online (Sandbox Code Playgroud)
这是否也适用于基于文件的缓存?更重要的是,当缓存增长低于该大小限制时会发生什么?它是删除旧的缓存值还是会抛出某种异常?
提前谢谢,danijoo
尝试使用FileStore缓存我发现:expires_in
选项有效,但:size
有人没有.
如果要指定选项,则还需要指定路径,请尝试以下示例:
config.cache_store =:file_store,Rails.root.join('tmp','cache'),{expires_in:1.minute}
将代码放入config/application.rb
并记住激活缓存config/environments/development.rb
并重新启动应用程序.
PS我用1分钟轻松做一个快速测试.