redis是一个key value数据库,在rails中常用来做缓存

‘redis’和‘redis-rails’的安装和使用

#mac中安装
brew install redis  #更新:brew update redis

#gem 'redis'
gem 'redis' #是针对ruby的一个gem, 用来在irb中和ruby进行交互
brew services redis start #启动redis
#irb环境中演示
require 'redis'
redis = Redis.new #<Redis client v3.3.3 for redis://127.0.0.1:6379/0>,默认指定localhost, prot 6379, 第0个数据库
redis = Redis.new(host: "10.0.0.1", prot: 6789, db: 15) #上面是默认生成,这是自己指定。
#基本操作,上面已经设定了redis对象
redis = Redis.new
redis.set 'key', 'value'
redis.get 'key' #=>value


#gem 'redis-rails'
gem 'redis-rails' #是针对rails的一个gem, 用来在rails中进行安装

使用redis进行缓存

#config/enviroments/development.rb, 改写里面的内容为如下所示
Rails.application.configure do  
  config.action_controller.perform_caching = true

  config.cache_store = :redis_store, {
    host: 'localhost',
    port: 6379,
    db: 0,
    namespace: '056redis'
  }
  config.public_file_server.headers = {
    'Cache-Control' => "public, max-age=#{2.days.seconds.to_i}"
  }
end

#views/welcomes/index.html.erb
<% cache "cache demo", expires_in: 2.seconds do %>
  <%= w%(mondey tuesday wednesday saturday friday saturday sunday).sample %>
<% end %>

results matching ""

    No results matching ""