Use Rails 5.2 Redis caching store
This is the first step in providing a fault-tolerant and distributed Redis caching store. We disable compression to avoid introducing a change that could have an adverse effect in production. Note that we won't be able to take advantage of the fault-tolerance and distributed features yet until we solve https://gitlab.com/gitlab-org/gitlab-ce/issues/64829. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/64794
This commit is contained in:
parent
029381b1d9
commit
b5771bccc6
8
Gemfile
8
Gemfile
|
@ -200,13 +200,13 @@ gem 'js_regex', '~> 3.1'
|
|||
# User agent parsing
|
||||
gem 'device_detector'
|
||||
|
||||
# Cache
|
||||
gem 'redis-rails', '~> 5.0.2'
|
||||
|
||||
# Redis
|
||||
gem 'redis', '~> 3.2'
|
||||
gem 'redis', '~> 4.0'
|
||||
gem 'connection_pool', '~> 2.0'
|
||||
|
||||
# Redis session store
|
||||
gem 'redis-rails', '~> 5.0.2'
|
||||
|
||||
# Discord integration
|
||||
gem 'discordrb-webhooks-blackst0ne', '~> 3.3', require: false
|
||||
|
||||
|
|
|
@ -741,17 +741,17 @@ GEM
|
|||
recaptcha (4.13.1)
|
||||
json
|
||||
recursive-open-struct (1.1.0)
|
||||
redis (3.3.5)
|
||||
redis (4.1.2)
|
||||
redis-actionpack (5.0.2)
|
||||
actionpack (>= 4.0, < 6)
|
||||
redis-rack (>= 1, < 3)
|
||||
redis-store (>= 1.1.0, < 2)
|
||||
redis-activesupport (5.0.4)
|
||||
redis-activesupport (5.0.7)
|
||||
activesupport (>= 3, < 6)
|
||||
redis-store (>= 1.3, < 2)
|
||||
redis-namespace (1.6.0)
|
||||
redis (>= 3.0.4)
|
||||
redis-rack (2.0.4)
|
||||
redis-rack (2.0.5)
|
||||
rack (>= 1.5, < 3)
|
||||
redis-store (>= 1.2, < 2)
|
||||
redis-rails (5.0.2)
|
||||
|
@ -1197,7 +1197,7 @@ DEPENDENCIES
|
|||
rdoc (~> 6.0)
|
||||
re2 (~> 1.1.1)
|
||||
recaptcha (~> 4.11)
|
||||
redis (~> 3.2)
|
||||
redis (~> 4.0)
|
||||
redis-namespace (~> 1.6.0)
|
||||
redis-rails (~> 5.0.2)
|
||||
request_store (~> 1.3)
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Use Rails 5.2 Redis caching store
|
||||
merge_request: 30966
|
||||
author:
|
||||
type: other
|
|
@ -233,7 +233,10 @@ module Gitlab
|
|||
end
|
||||
|
||||
# Use caching across all environments
|
||||
# Full list of options:
|
||||
# https://api.rubyonrails.org/classes/ActiveSupport/Cache/RedisCacheStore.html#method-c-new
|
||||
caching_config_hash = Gitlab::Redis::Cache.params
|
||||
caching_config_hash[:compress] = false
|
||||
caching_config_hash[:namespace] = Gitlab::Redis::Cache::CACHE_NAMESPACE
|
||||
caching_config_hash[:expires_in] = 2.weeks # Cache should not grow forever
|
||||
if Sidekiq.server? # threaded context
|
||||
|
@ -241,7 +244,7 @@ module Gitlab
|
|||
caching_config_hash[:pool_timeout] = 1
|
||||
end
|
||||
|
||||
config.cache_store = :redis_store, caching_config_hash
|
||||
config.cache_store = :redis_cache_store, caching_config_hash
|
||||
|
||||
config.active_job.queue_adapter = :sidekiq
|
||||
|
||||
|
|
Loading…
Reference in New Issue