0

我是一个新手,正在尝试制作他的第一个 Web 应用程序。我现在想到的是一个类似于 Facebook 的通知系统。我快速搜索了一下其他人对这个主题的看法,并看到了许多关于如何解决这个问题的不同意见:有些人建议使用 Resque/Delayed Job/Beanstalkd 在后台执行该过程,而其他人则指向 gems 之类的邮箱。

为什么需要在后台处理作业?它仅用于传入消息吗?此外,延迟作业是否足以用于简单的通知系统?我听说 beanstalkd 是最快的,但不支持 Windows。

任何帮助/建议/答案将不胜感激。

4

2 回答 2

1

您将需要运行 rake 任务或延迟作业。

在 Web 应用程序中,您必须立即将答案发送给用户,您不想让他等到您完成所有广播处理,所以您只需保存发布并向他显示成功消息。

然后,您处理通知,并将此通知广播给所有订阅者,此过程可能需要一些时间(假设某人有 2,000 个朋友)。

最后,如果你想让通知系统显示实时通知,后台进程可以通过 javascript 和 websockets 广播消息,看看Best Ruby on Rails WebSocket tool

于 2013-03-04T03:39:50.853 回答
1

看看这个出色的视频和文字教程http://railscasts.com/episodes/406-public-activity它可能会为您指明正确的方向

同样在同一个网站上,您会发现很多有用的信息

于 2013-03-04T04:04:02.413 回答