Redis
 sql >> база данни >  >> NoSQL >> Redis

Задаване на cache_store в инициализатор

След известно проучване, вероятно обяснение е, че инициализаторът initialize_cache се изпълнява много преди релсите/инициализаторите. Така че, ако не е дефиниран по-рано във веригата за изпълнение, тогава кеш магазинът няма да бъде зададен. Трябва да го конфигурирате по-рано във веригата, като в application.rb или environments/production.rb

Моето решение беше да преместя зареждането на APP_CONFIG, преди приложението да се конфигурира по следния начин:

APP_CONFIG = YAML.load_file(File.expand_path('../config.yml', __FILE__))[Rails.env]

и след това в същия файл:

config.cache_store = :redis_store, APP_CONFIG['redis']

Друг вариант беше да поставите cache_store в блок before_configuration, нещо подобно:

config.before_configuration do
  APP_CONFIG = YAML.load_file(File.expand_path('../config.yml', __FILE__))[Rails.env]
  config.cache_store = :redis_store, APP_CONFIG['redis']
end


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kubernetes NFS съхранение с помощта на PV и PVC

  2. Redis / Вземете всички ключове и стойности от redis с префикс

  3. Catbox-redis показва грешка при изключена връзка в приложението ми hapijs

  4. Redis съхранява списък в хеш

  5. Може ли някой да обясни командата redis setbit?