我知道这里有更多这样的问题(关于websockets和Ajax请求),但我目前正在寻找最佳解决方案。
我目前正在使用Javascript开发游戏。它是一个单页应用程序,因此每次更改都应从服务器中提取,而无需刷新页面。我现在想知道如何处理'库存资源'(如木材,食品和黄金)。
每秒产生一次资源。例如,每分钟生成100个资源。这应该是现场更新。我知道,在这种情况下,没有必要真正更新它们。我的意思是,我可以简单地计算当前时间产生的资源减去最后更新的时间。
这里没问题,但是资源的生产有很多不同的因素:
那么,我该如何更新用户的资源?这些是我认为可能有用的选项: *在服务器上ping一个脚本,每5秒计算和更新一次资源。 *设置一个websocket流并在每次活动后触发它(攻击后,拆除建筑物......)
还有其他选择吗?什么是最好的方式?如果延迟5秒,这不是一个真正的问题。