我一直很好奇不同网站的功能。
我假设这个站点通常可以纯粹用 PHP 和 javascript 构建,并且计时器基本上是在 ajax 调用上运行的,但是内部服务器/客户端机器如何同时保持每个人的计算机同步(特别是考虑到JS是客户端语言)?
如果它实际上正在进行 ajax 调用(显然每 1/5 秒一次)以跟上出价/计时器设置,那么像这样的网站必须维护什么类型的硬件和带宽?
现实中是否有更好的语言来支持此类网站?
提前致谢!
更新
我不是在问如何最终在 JS 中创建倒计时显示 - 两者(服务器和最终用户)之间如何来回传递
最佳答案
他们使用服务器的时间,然后将其输出到客户端。
其中 javascript 然后在每个客户端上相同地递减它。
这在服务器上没有命中。减量发生在客户端,而不是服务器端,因为它不是 ajax 调用。
例如:
var serverTime = getServerTime();
setTimeout(function(){serverTime--;},1000);
//decrement by one every 1000 milliseconds (1 second)
并且在这些站点中的每一个上,后台都可能有一个 Comet(或任何其他长轮询),当发生更改时,将再次调用 getServerTime()
。
这对服务器来说影响不大,例如 Comet 编程,它是一个隐藏的 iframe,可以在需要时调用 js 脚本。
看这里:
关于php - 像 Swoopo 或 Quibids 这样的网站如何让所有游戏玩家保持计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5307555/