在Heroku上发布Faye Ruby服务器端-检测到EventMachine缓冲区溢出
我在heroku worker(使用sidekiq-5线程)上有一个FayeRuby客户端,它发布到运行在linode上的faye服务器 工作进程在几分钟后崩溃,检测到缓冲区溢出消息 *代码 我尝试了以下方法: 1) EM.epoll在EM.run之前 2) EM.stop\u event\u循环在相应的回调中 我知道文件描述符限制导致了这个问题 问题: 如何释放客户端并停止EM事件循环以完全释放打开的文件在Heroku上发布Faye Ruby服务器端-检测到EventMachine缓冲区溢出,heroku,websocket,out-of-memory,publish-subscribe,faye,Heroku,Websocket,Out Of Memory,Publish Subscribe,Faye,我在heroku worker(使用sidekiq-5线程)上有一个FayeRuby客户端,它发布到运行在linode上的faye服务器 工作进程在几分钟后崩溃,检测到缓冲区溢出消息 *代码 我尝试了以下方法: 1) EM.epoll在EM.run之前 2) EM.stop\u event\u循环在相应的回调中 我知道文件描述符限制导致了这个问题 问题: 如何释放客户端并停止EM事件循环以完全释放打开的文件 是因为sidekiq在线程模式下运行吗?好的,我意识到了这个错误 我在EM.run块之外
是因为sidekiq在线程模式下运行吗?好的,我意识到了这个错误
我在EM.run块之外创建客户机。一旦我将初始化移到EM.run块中,一切正常。好的,我意识到了错误 我在EM.run块之外创建客户机。一旦我将初始化移到EM.run块中,一切都正常工作
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
}