0

需要想出最好的方法来做到这一点。

我使用 Thin 为 Rails 应用程序部署 faye、webrick

我有一个拍卖网站,它使用有关最新出价的信息更新订阅的频道,所有这些都是通过 Faye 和 Rails 完成的。

我需要确保用户使用计数器/计时器看到拍卖结束时间的倒计时。

如果我在客户端使用 JS 每秒轮询剩余时间,我可能会在服务器上每秒收到 1000 个请求

我也可以使用 JS 仅在客户端倒计时,然后每隔 5 秒定期同步浏览器,以确保它们与服务器同步。

或者另一种选择可能是使用 faye 将倒计时发布给每个连接的用户到浏览器

我有点担心流量,并希望确保用户看到拍卖倒计时的正确时间

从逻辑上讲,我认为客户端 JS 和定期推送以同步它会工作得最好。

其他人如何做到这一点?最好的方法是什么?我错过了哪些其他选择?

4

1 回答 1

0

最好的方法可能是使用此railscast中描述的Faye 。

使用 JS 轮询更改可能不适合您,因为您有很多用户。此外,即将推出的 Rails 4 将允许您从控制器流式传输服务器发送的事件,但这还有些实验性。是该功能的说明。

如果您只想发布剩余时间,那么 JS 轮询不经常进行以保持同步是一种选择,但很快它就会在您添加新功能和用户时成为服务器负载问题。

于 2013-02-03T17:48:31.847 回答