29

我发现很多文章向我展示了 EventMachine 是什么以及如何设置无休止的“Hello World!”。示例,但我仍然不知道它如何与我的 Rails 应用程序集成。

例如,我有一个现有的 Rails 应用程序,它有许多并发用户,他们可能同时在我的数据库中编辑同一行。我在想我会允许两个(或更多)不同的人加载记录,但如果记录已更新,请通知这些用户,并强制后者用户在将其保存回数据库之前协调任何冲突的更改。我在想我可以在客户端使用 Javascript 和 websockets(或 flashsockets)来处理通知和协调以与浏览器通信(如果另一个用户更新记录——比如推送通知或其他东西)。

最后一部分将我带到了 EventMachine,但是——正如我的引导问题所表明的——我不知道如何将它集成到我的 Rails 应用程序中。

谁能给我一些见解(比如,一个好的宏观层面的观点)或向我指出一些好的资源?(除了EventMachine 的 wiki,因为我已经去过那里)。

4

2 回答 2

15

我花了相当多的时间来研究这个。EventMachine 需要在您的 rails 安装中作为线程运行(除非您使用的是 Thin),并且对于 Passenger 有一些特殊的注意事项。我在这里写了我们的实现:http ://www.hiringthing.com/2011/11/04/eventmachine-with-rails.html

于 2011-11-04T18:57:44.350 回答
5

I think this example of some async Rails setup could also help you in your investigation of EventMachine like features usage in the applications. It is not fully related to EventMachine itself, though.

于 2010-08-25T23:17:45.633 回答