Ruby Rack App - Couchbase DNS /主机名查找错误

时间:2014-09-11 19:40:36

标签: ruby-on-rails ruby dns rack couchbase

我在我的机架应用程序(couchbase gem v1.3.9)中使用couchbase作为会话存储。

当我用更多请求测试机架应用程序时(例如,jmeter中的50个并行线程) 或者只是多次重新加载应用程序,我总是得到这个错误:

Rack app error:Couchbase :: Error :: UnknownHost:bootstrap error,DNS / Hostname lookup failed(error = 0x15)>

我的问题:
这里的任何人都有这样的错误,当使用带ruby的couchbase时我怎么能解决这个问题呢? 在ruby rack应用程序中,couchbase的性能如何作为sessionstore呢?

其他信息:

我的 config.ru

session_options = PlainRackApplication::Config.session_options
use ActionDispatch::Session::CouchbaseStore, session_options

run RackApp.new

和我的沙发基地选项

module PlainRackApplication
  class Config
    @session_options = {
      path: '/',
      namespace:'sessions_',
      key: 'foo_session',
      expire_after: 30.days,
      couchbase: {bucket: "foo",
                  username: 'foo',
                  password: 'bar',
                  default_format: :json}
    }
  end
end

2 个答案:

答案 0 :(得分:1)

您在什么环境中遇到此错误?
如果在您的本地主机上发生这种情况,请验证
127.0.0.1 localhost
包含在/ etc / hosts中。为我工作。

答案 1 :(得分:0)

(错误= 0x15)错误消息表明引导列表中的某个主机名不正确。

客户端将引导带列表随机化,这样就可以解释为什么在您提出更多请求时或者您多次重新加载应用程序时只能看到它。

进一步创建和销毁couchbase客户端对象可能会降低应用程序的速度。如果可以,您应该尝试使用所有请求使用的长期持久连接。

许多用户确实使用couchbase作为会话存储,主要是因为它的高性能。