假设我们有用户 A 和 B,他们访问同一个包含按钮的 URL。当 A 单击按钮时,我希望 B 的网站上的某些内容立即发生变化,而 B 正在访问它,例如要添加的文本。 我希望延迟小于 150 毫秒。
这现实吗?你能给我一些提示,告诉我应该搜索什么,或者可以说明这一点的玩具示例吗?谢谢。
最佳答案
我认为您应该看一下 Push/Comet 服务器。现在非常流行的一个是 NGINX 的推送模块:http://pushmodule.slact.net/
这就是创建聊天室的方法。至少这听起来像你解释的那样。
****更新****
至于您的延迟问题,我认为 150 毫秒不现实,您意识到这至少是一个完整的往返行程加上一个数据库读写。轮询不会给用户带来非常快的体验,这是因为您的 JS 可能决定在用户完成操作之前立即发送响应,您必须等到您的 JS 再次为用户“B”发送请求"以查看更新。这可能会很长时间,大概 10 秒?在我看来,您不会使用轮询,因为它非常浪费,而且还使缓存变得非常困难。
我会选择插入。不幸的是,Apache 没有像 Nginx 这样可靠的推送服务。
关于javascript - B 做某事时如何更改 A 的 html 站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2293692/