Rails:警告用户来自不同服务器的错误



我有两个应用程序:Interface是Rails应用程序,Processor用于bash脚本。

如果Processor上的bash进程失败,我需要通知Interface用户的会话。我可以访问Processor上的命令行,所以我可以使用Processor上设置的:error_message来访问http://interface.com/process/12/error/:error_message

不过我不知道该怎么做。该路由在浏览器中有效,但我不知道如何用错误消息重定向用户。

任何帮助都会很棒。

谢谢。

为了回答这个问题,我将对您的设置进行一些假设。如果我说得不对,请纠正我。

我假设您的Interface用户正在通过访问Interface服务器上的http://interface.com/process/12/monitor等页面来监视您的网站,并且您希望弹出错误消息,让他们知道出现了问题。

考虑到这一点,请考虑让对http://interface.com/process/12/error/:error_message的调用将错误存储在相关的ProcessError表中。然后,在监视器页面上使用javascript轮询接口服务器以查找"新"错误。轮询间隔实际上取决于情况。如果你是唯一的用户,每秒钟都可以,但如果同时有很多监控用户,你可能希望延长轮询间隔。多长时间取决于负载以及快速通知用户的重要性。

推送解决方案会更有效,但实现起来有点困难。如果这对你很有吸引力,可以看看Faye,一个支持Rails服务器和html+javascript客户端的发布-订阅消息系统。

希望这能为你指明正确的方向!

最新更新