首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与Ruby Web socket服务器并列排队

与Ruby Web socket服务器并列排队
EN

Stack Overflow用户
提问于 2011-10-09 23:23:57
回答 1查看 383关注 0票数 1

我正在使用jruby on rails编写一个应用程序。应用程序的一部分从网页启动一个长时间运行的进程。在某些情况下,长时间运行的进程可能会持续20分钟,但在大多数情况下,在时间上会超过网页响应。如果用户关闭浏览器,我也希望作业继续。长时间运行的进程将在运行时向数据库添加记录。

我想在网页上给出插入到数据库中的视觉指示,我更喜欢使用web套接字,而不是轮询数据库中的插入。

我正在考虑发送一条消息到一个具有队列处理程序的resque队列,如果用户关闭浏览器,该队列处理程序将确保作业完成。队列处理程序将执行对数据库的插入操作。

我正在考虑使用EM-WebSocket作为我的websocket服务器。

我的问题是:

如何在resque进程和EM-WebSocket进程之间进行通信?我想以某种方式将新插入的详细信息从resque进程传递到数据库中,并传递给一个将与浏览器通信的EM-WebSocket实例。

有没有人解决了这样的问题,或者我该怎么做?

EN

回答 1

Stack Overflow用户

发布于 2011-11-10 23:08:40

实际上,我正在做一个让这件事变得非常简单的宝石。现在它还很空洞,但它确实可以工作。https://github.com/KellyMahan/RealTimeRails

它运行一个事件机器服务器来监听更新,并利用em-websockets将这些更新发送到浏览器。

它的目的是通过一个after_save调用来监视活动记录的更新,该调用告诉事件机器服务器它有一个带有id的模型的更新。然后,它将模型和id与特定通道相匹配,以将消息发送到web套接字服务器上的连接。当浏览器收到更新通知时,它会调用ajax来检索最新的结果。

这仍然是一项正在进行的工作,但它可以帮助你。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7704522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档