Приложение Ruby Rack - грешка при търсене на DNS/име на хост на Couchbase

Използвам couchbase като място за съхранение на сесии в моето раково приложение (couchbase gem v1.3.9).

Когато тествам приложението rack с още една заявка (например 50 паралелни нишки в jmeter) или просто презареждам приложението много пъти, винаги получавам тази грешка:

Грешка в приложението Rack: Couchbase::Error::UnknownHost: грешка при зареждане, неуспешно търсене в DNS/име на хост (грешка=0x15)>

Моите въпроси:
Някой друг тук има такава грешка, когато използва couchbase с ruby ​​и как мога да разреша това?
Какво ще кажете за производителността на couchbase като sessionstore в приложение за ruby ​​rack?

Допълнителна информация:

Моят 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

person sweo    schedule 11.09.2014    source източник


Отговори (2)


В каква среда срещнахте тази грешка?
Ако това се случи на вашия локален хост, проверете дали
127.0.0.1 localhost
е включен във вашите /etc/hosts. Работи за мен.

person Peleg    schedule 16.07.2015

Съобщението за грешка (error=0x15) предполага, че едно от имената на хостове в списъка за първоначално зареждане е неправилно.

Клиентът произволно подрежда списъка за зареждане, така че това обяснява защо го виждате само когато правите повече заявки или ако презареждате приложението няколко пъти.

По-нататъшното създаване и унищожаване на клиентски обекти на couchbase може да забави вашето приложение. Ако можете, трябва да опитате да използвате дълготрайна постоянна връзка, която се използва от всички ваши заявки.

Редица потребители наистина използват couchbase като магазин за сесии главно поради високата му производителност.

person Paddy    schedule 12.09.2014
comment
Освен това, библиотеката може понякога погрешно да докладва грешка „име на хост“, когато проблемът всъщност е невъзможността да се създаде нов сокет, вероятно защото вашите файлови дескриптори са максимизирани или защото таблицата за TCP връзка е максимизирана на системно ниво - person Mark Nunberg; 12.09.2014
comment
Хей, момчета, благодаря за отговорите! Както се случва и на localhost, не мисля, че причината е грешното име на хост в списъка за стартиране. Максималната TCP връзка на системно ниво може да е причината, но може би е интересно как може да се тества това. - person sweo; 14.09.2014