我有一个接受TCP连接的EventMachine。这些连接在大约10分钟不活动后自动关闭,这对我不利。我需要他们保持开放。我想我需要在连接上设置KEEPALIVE套接字选项,但是我在弄清楚语法时遇到了一些麻烦。
这是我尝试过的,但这并没有解决任何问题:
class Connection < EventMachine::Connection
def initialize
set_sock_opt Socket::SOL_SOCKET, Socket::SO_KEEPALIVE, true
end
作为参考,这是我的主要EventMachine循环:
EventMachine::run do
EventMachine::start_server(host, port, Connection)
end