当前位置: 移动技术网 > IT编程>脚本编程>Ruby > Rails.cache

Rails.cache

2019年05月31日  | 移动技术网IT编程  | 我要评论

和大家分享一下个人关于rails.cache的浅显的认识,望大家指教。

1.rails.cache是什么

它是rails中的缓存,拥有所有缓存的共同点,它是为了提升网站性能。

2.rails中rails.cache的存储系统。

本身常用的有四种,可以根据不同的环境进行选择不同的存储系统。

  • filestore,利用文件系统缓存文件,能够在多个应用间共享缓存,但是这样会不断的增加硬盘使用。
  • memorystore, ruby 进程使用共同的内存,默认大小为32m,,虽然可以更改这个限制,但是不适合大型的部署,并且它不能用于多个应用共享缓存。
  • memcachestore, 这种方式使用 memcached 最为后端缓存服务,它提供了高性能的、集中式的缓存服务,可以在多个应用间共享缓存,这是一种适合中大型商业应用的选择。
  • nullstore, 适合开发和测试环境的配置,它不会储存任何东西,但是可以正常调试 rails.cache 中的方法。

3. rails项目的自定义配置存储系统。

这里我以使用redis来作为rails.cache的存储系统进行介绍

3.1 为什么会选redis

使用redis,能够通过 redis 的命令快速实现,比关系型数据库拥有更快的读写速度,且更适合储存非结构化数据。

3.2 如何配置

  • 确保你的系统已经安装了redis数据库(具体怎么安装,这里不做阐述)
  • 在你的gemfile文件中,加入gem 'redis-rails'这一行,然后bundle install。
  • 一般初始化的默认配置可以在development.rb,production.rb,test.rb文件中单独设置适用于不同环境的存储系统;我选择直接在application.rb中写配置信息。
配置信息(必须):
config.action_controller.perform_caching = true # 确保开启缓存,dev环境下默认是没有开启的。
config.cache_store = :redis_store, {
    host: 'localhost',
    port: '6379',
    db: 1, # 这是整数,可以理解为redis数据库中的表标志,默认是16个数据库,可从0-15中取值
    password: '',
    expires_in: 5.hours # 过期时间的设置
}

4. rails.cache常见用法。

主要有3种:

  • 片段缓存
    继续。。
  • 页面缓存
    继续。。
  • 方法缓存
    继续。。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网