У меня есть клиент ruby ruby для рабочего героя (с использованием sidekiq - 5 потоков), который публикуется на сервере faye, работающем на linode.Faye Ruby Server Side Опубликовать на Heroku - обнаружено переполнение буфера EventMachine
Работник падает через несколько минут после обнаружения переполнения буфера .
* Код
EM.epoll
EM.run {
publication = @client.publish('/glive-bullion','body'=>body)
publication.callback do
EM.stop_event_loop
end
publication.errback do |error|
puts 'There was a problem: ' + error.message
EM.stop_event_loop
end
}
Я попытался следующие: 1) EM.epoll перед тем EM.run 2) EM.stop_event_loop в соответствующих обратных вызовов.
Я понимаю, что ограничение дескриптора файла вызывает эту проблему.
Вопрос: Как освободить клиента и остановить цикл событий EM, чтобы полностью открыть открытый файл?
Это связано с тем, что sidekiq работает в режиме с резьбой?