我正在尝试创建一个客户端可以连接到的Ruby守护程序进程。
我需要确保远程Ruby进程始终保持连接并且可用于连接,因此我需要检测网络中断或无法访问的错误。
我想在客户端和服务器之间的应用程序级别有一个心跳机制,如果连接失败,则在客户端有超时。
我被告知Ruby中的select
方法也有帮助,但不确定。
任何人都可以分享任何良好的链接/资源或传授一些通用的智慧来在Ruby中创建可靠和快速的守护进程吗?
答案 0 :(得分:2)
我认为很多人会将eventmachine用于此类应用程序。在其核心,它使用epoll
(类似于select
)来决定下一个要处理的套接字。在eventmachine上构建了许多宝石,允许您运行不同类型的服务器。一个例子是em-websocket。