ruby - 检测 eventmachine 断开连接并测试重新连接

标签 ruby sockets telnet eventmachine reconnect

我正在尝试在事件机器之上构建一个系统,该系统将检测 TCP 连接何时失败,并测试是否可以触发重新连接。我已经浏览了所有的 eventmachine 代码,但似乎无法找到连接超时或重新连接时的连接回调。尽管我已经在代码中设置了时间,但挂起的连接上没有回调,如果我尝试重新启动重新连接,我不会收到有关连接是否成功或失败的反馈。我使用它来有效连接到 telnet 接口(interface)。

EventMachine.run do
c = EventMachine.connect "10.8.1.99",5000,ConnectInterface
c.pending_connect_timeout = 10

结束

任何帮助将不胜感激。

最佳答案

module MyCallBack

def unbind  # define your unbind method
  puts "#{@@ip}: #{@@port}"
  puts "-- disconnected from remote server!"
  puts "-- attempting reconnection"
  reconnect @@ip, @@port # use reconnect, already provided by EventMachine 
end

end

关于ruby - 检测 eventmachine 断开连接并测试重新连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8889230/

相关文章:

actionscript-3 - 无法从浏览器连接到服务器

java - 如何通过套接字连接发送实例?

python - 删除 telnet session 中的输入行

linux - 路由器文件传输

python - 如何使用 Python 打包一个大整数,将四个字符视为网络字节顺序中的无符号长整型,就像 Ruby 的 .pack ("N"那样?

ruby-on-rails - "No such file or directory @ rb_sysopen"使用 OpenURI

ruby - 没有 Rails 的 ActionMailer - 未获取 View

ruby-on-rails - Rails has_many :through association. 删除与链接的关联?

c# - 循环中的C#Socket.SendTo最终会导致SocketException(取决于路由器)

java - Cassandra 连接失败