我正在写Rails 3.1中的一个简单的聊天室应用程序 - 用于学习目的。 对于初学者来说,我拥有所有需要的模型(消息,用户,房间等)和事物。 客户端每分钟轮询一次服务器(例如),如果有任何消息,则会获得新消息。使用EventMachine的Rails应用程序是否可以进行长时间轮询?
我想简单的轮询更改为长轮询和无法弄清楚这是否可以在同一应用程序做或做我必须创造一个长轮询其他一些Push服务器。
我读了很多关于EventMachine的和改变了我的Rails应用程序用户的它,因为我想用EventMachine的为事件驱动机制。我认为EventMachine频道会派上用场。 客户端会连接并等待聊天室中的消息,并且只有在发送到房间时才会收到消息。
我无法弄清楚什么是我可以分享我的所有客户端连接之间的EventMachine的:: Channel实例。 这种方法甚至有可能,或者我以错误的方式去做?
如果可能的话,我想可以作为托管在Heroku上一个Rails应用程序运行的解决方案。
我不是活动机器的专家,但我认为这是可能的。而且你不分享你的客户之间的渠道,但你有一个客户端,你需要在EM之上建立一些东西,以便在不同的用户之间发送消息。 – Augusto
是的,说我有一个渠道为每个客户。 我可以在哪里存储所有这些通道实例,以便可以从其他人发送消息时调用的控制器访问? – Oded