Rails.cache
程序员文章站
2022-03-02 08:12:59
和大家分享一下个人关于Rails.cache的浅显的认识,望大家指教。 1.Rails.cache是什么 它是Rails中的缓存,拥有所有缓存的共同点,它是为了提升网站性能。 2.Rails中Rails.cache的存储系统。 本身常用的有四种,可以根据不同的环境进行选择不同的存储系统。 FileS ......
和大家分享一下个人关于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种:
- 片段缓存
继续。。 - 页面缓存
继续。。 - 方法缓存
继续。。
上一篇: angular组件间通讯的实现方法示例
下一篇: 字体反爬-动态字库