目标我想要实现
我需要实现某种订阅事件方法。确切地说,人们可以在表中锁定单元格(更多的用户可以同时查看同一个表),当其他人锁定一个单元格时,需要更新表。(这样用户就不会尝试多次锁定同一个单元格。)我至少有45-50个用户。(有多个表(在数量有限的单独网页上,加载了使用JSON传输的AJAX,我将JSON编码在服务器端)。
限制、资源和思想
我有以下想法:
使用频繁运行的CRON作业,我可以生成json字符串并将其写入文件--客户端可以定期下载json文件,并在发生更改时更新表。
我知道这听起来不太优雅,所以我决定在执行上面的计划之前四处询问。
谢谢你的任何想法/帮助,Bálint
发布于 2015-03-21 15:03:16
有了这组服务器端的限制,您可能只想在客户机中使用轮询。客户端将发出一个ajax调用,要求在计时器上进行更新。服务器将在每次接收ajax调用时向客户端提供最新状态。您将不得不手动调整客户端轮询的频率,根据您想要支持的比例(更高的比例意味着轮询间隔之间的时间更长)以及该比例对服务器端限制的影响。
客户端轮询将不利于带宽的使用,因此您将不得不量化您可以在那里生活的内容(测量N个客户端在一定时间间隔内使用的带宽,并相应地调整轮询的频率)。
显然,更现代的技术,如持续连接的webSockets,甚至是长轮询,都会给您提供更好的响应能力和更低的带宽使用,但由于服务器端的限制,您似乎已经排除了这些技术。最好的解决方案是修复服务器端的限制。如果您使用socket.io,它将自动返回到不支持webSockets的客户端的长轮询。
https://stackoverflow.com/questions/29183341
复制相似问题