首页 > 解决方案 > 为什么“DalliError:没有可用的服务器”一直出现在日志中,尽管我使用的是 redis?

问题描述

我在服务器上运行 Sharetribe 的修改版本。这是Sharetribe的部分代码:

  config.cache_store =
    if ENV["redis_host"].present?
      Readthis.fault_tolerant = true
      [:readthis_store, {
         redis: { host: ENV["redis_host"],
         [............]
       }]
    else
      [:dalli_store, (ENV["MEMCACHIER_GREEN_SERVERS"] || "").split(","), {
         username: ENV["MEMCACHIER_GREEN_USERNAME"],
         [............]
       }]
    end

在我的生产中,我使用 redis。不是内存缓存。

  RAILS_ENV=production redis_host=localhost redis_port=6379 redis_db=0  rails server [.....]

但是,在生产日志中,这似乎一直在使用 memcached:

DalliError: No server available

为什么?如何解决它,我也有吗?这是可以忽略的错误或警告吗?

在 Gemfile 我有gem "dalli", "~> 2.7.6

标签: ruby-on-railsrubyredismemcached

解决方案


推荐阅读