commit: 53fb7b1aa84a76d66ef6973208e1c76a100774f3
parent: a59d10d3df21befac6da57d92aed3087b7c10d6a
Author: Eugen Rochko <eugen@zeonfederated.com>
Date: Wed, 2 Nov 2016 13:30:52 +0100
Replace in-memory cache store with redis store, should decrease memory
footprint of each running process by 128mb
Diffstat:
3 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/Gemfile b/Gemfile
@@ -69,4 +69,5 @@ end
group :production do
gem 'rails_12factor'
gem 'lograge'
+ gem 'redis-rails'
end
diff --git a/Gemfile.lock b/Gemfile.lock
@@ -256,6 +256,22 @@ GEM
railties (>= 3.2)
tilt
redis (3.3.1)
+ redis-actionpack (5.0.0)
+ actionpack (>= 4.0.0, < 6)
+ redis-rack (~> 2.0.0.pre)
+ redis-store (~> 1.2.0.pre)
+ redis-activesupport (5.0.1)
+ activesupport (>= 3, < 6)
+ redis-store (~> 1.2.0)
+ redis-rack (2.0.0)
+ rack (~> 2.0)
+ redis-store (~> 1.2.0)
+ redis-rails (5.0.1)
+ redis-actionpack (~> 5.0.0)
+ redis-activesupport (~> 5.0.0)
+ redis-store (~> 1.2.0)
+ redis-store (1.2.0)
+ redis (>= 2.2)
ref (2.0.0)
responders (2.3.0)
railties (>= 4.2.0, < 5.1)
@@ -396,6 +412,7 @@ DEPENDENCIES
rails_autolink
react-rails
redis (~> 3.2)
+ redis-rails
rspec-rails
rspec-sidekiq
rubocop
diff --git a/config/environments/production.rb b/config/environments/production.rb
@@ -45,7 +45,12 @@ Rails.application.configure do
# config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new)
# Use a different cache store in production.
- config.cache_store = :memory_store, { size: 128.megabytes }
+ config.cache_store = :redis_store, {
+ host: ENV['REDIS_HOST'] || 'localhost',
+ port: ENV['REDIS_PORT'] || 6379,
+ db: 0,
+ namespace: 'cache'
+ }
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
# config.action_controller.asset_host = 'http://assets.example.com'