【问题标题】:cache: [GET /] miss? dalli gem, memcached, rails 3.1, nginx, unicorn production environment缓存:[GET /] 错过? dalli gem、memcached、rails 3.1、nginx、独角兽生产环境
【发布时间】:2011-12-01 01:14:48
【问题描述】:

我正在努力让第一个应用程序在生产中运行。无论我做什么,我都会在我的独角兽日志中得到一个基本的 404 页面,无论我做什么:

cache: [GET /] miss
cache: [GET /something] miss

生产.rb

 config.cache_store = :dalli_store, 'localhost:11211'
 #config.cache_store = :memory_store

在开发中一切正常(没有在开发 afaik 中跳过的缓存),并且根据用于设置控制器动作缓存的 rails 指南,仔细检查我的所有语法都是正确的,只有错误消息。

任何人都可以就我缺少的原因或内容提供一些指示吗?在开发中工作,但不在我设置的服务器上。我非常乐意提供更多信息来解决这个问题。这是很多需要协调的活动部分,我将不胜感激。

编辑:

我从 memcached 获得了一些反馈,使用所有以前的选项和 -B 二进制(加上 -vv)运行它,似乎该程序甚至没有与 memcached 连接; memcached 在程序运行时不注册任何内容。

编辑:

我在开发和生产中回到了本地设置;缓存有效,memcached 响应,唯一的区别是我不是通过 nginx/unicorn 运行 webrick,但如果这有助于查明我要注意的问题,也许这有一些用处和追求的方向。

编辑:

回到服务器,然后在启用缓存配置的开发模式下运行:

config.cache_classes = true config.action_controller.perform_caching = true config.cache_store = :dalli_store, '127.0.0.1:11211'

很明显,rails 没有与 memcached 连接。日志中没有任何关于尝试连接缓存的内容,并且使用 -vv 运行的 memcache 显示没有任何活动。如果我去控制台,我可以按照 dalli 基本 cli 说明手动连接,嗯。只是尝试使用 memcached 实例的各种选项不会产生任何响应。

但是,我可以在索引页面上查询 memcached 的统计信息,该页面出现在我设置它的每个请求上……尽管在 rails 日志中没有显示有关访问 memcached 的任何内容。

编辑:

解决了这个问题,发现错误是无关的....一旦我对错误引用的样式表的一些资产管道问题进行了排序,一切似乎都运行顺利。至少是一次学习经历。

【问题讨论】:

  • 对于我们这些有同样错误的人,有什么问题的详细信息吗?

标签: ruby-on-rails ruby-on-rails-3 memcached


【解决方案1】:

Dalli 仅是二进制协议,因此请确保您的 memcached 服务器使用二进制协议。例如,memcached 的开头应该是:

memcached [...] -B auto [...]

另外,memcached version must be >= 1.4.0

更新

这些消息是由Rack::Cache 设置为详细日志记录模式生成的,并不意味着任何事情都一定是错误的。它们更像是提醒您可以做类似的事情

expires_in 20.minutes
expires_in 3.hours, :public => true
expires_in 3.hours, 'max-stale' => 5.hours, :public => true

(在您的 Rails 控制器中)然后页面缓存可能会自动工作(并且这些消息会在页面从缓存中呈现时消失)。

【讨论】:

  • 它是 1.4.5....它以默认的 autonegotiate 开始,我只是在 ubuntu 上通过 apt 将它拉出来,并将其配置为从服务器启动开始。
  • 感谢您的帮助,这又变成了另一个问题,但这确实让我对集成 memcached 和 rails 有了更好的理解
【解决方案2】:

您可以通过 heroku 控制台使用Rails.cache.read('[key]') 来发现它是否正常工作

【讨论】:

    猜你喜欢
    • 2012-03-15
    • 2020-10-17
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-27
    相关资源
    最近更新 更多