Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Ustawienie cache_store w inicjatorze

Po kilku badaniach, prawdopodobnym wyjaśnieniem jest to, że inicjator initialize_cache jest uruchamiany przed kolejkami/inicjatorami. Więc jeśli nie jest to zdefiniowane wcześniej w łańcuchu wykonywania, magazyn pamięci podręcznej nie zostanie ustawiony. Musisz go wcześniej skonfigurować w łańcuchu, np. application.rb lub environment/production.rb

Moim rozwiązaniem było przeniesienie ładowania APP_CONFIG, zanim aplikacja zostanie skonfigurowana w następujący sposób:

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

a następnie w tym samym pliku:

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

Inną opcją było umieszczenie cache_store w bloku before_configuration, coś takiego:

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. Połącz się z AWS ElastiCache z szyfrowaniem w tranzycie

  2. Indeksowanie przy użyciu posortowanych zestawów Redis

  3. Jackson deserializuje obiekt z listą interfejsów sprężyny

  4. Czy ta technologia może się skalować?

  5. Jak stworzyć rozproszoną blokadę z Redis?