【发布时间】:2011-11-06 09:26:03
【问题描述】:
我面临的挑战是仅使用标题中提到的技术来模拟网站(例如游戏网站)的两个用户之间的通信渠道。
最近我开发了一个在线国际象棋网站,其背后的想法是让用户也有机会玩“现场”比赛,而不仅仅是让你下棋的冗长比赛,然后在 1-15 回来几天看看你的对手有没有回应。这个游戏引擎的工作方式意味着向服务器发送异步请求,既可以更新与游戏相关的信息(以防你移动),也可以验证是否有任何变化(如果你正在等待对手移动)。
为了更好地解释这一点......轮到它的玩家(当然是浏览器)发送一个异步。请求更新游戏信息,确切地说是在他采取行动的时候。同时,对手发送 PERIODIC 请求,“询问”是否有任何变化。如果有任何变化,则在董事会更新后角色切换。
计时器是引擎功能的后盾,所以我的问题是:你将如何模拟两个玩家之间的 com 频道,同时尽量不对服务器施加太大压力,同时还要更新游戏尽可能快,以保持对它的“活着”的感觉。这在 1 分钟游戏(可用类别之一)中最为重要。因为在这种情况下,请求需要经常发生(至少 1 秒)。但是服务器响应可能会延迟,当同时有数百个游戏可用时,服务器会承受很大的压力等等......所以你看到了我的问题。
如果您有任何好的想法,我期待收到你们的来信并挑选您的大脑:)
干杯! 安德烈
PS:如果你想试试,名字是e-chess960.com
【问题讨论】:
-
查看 node.js 和 socket.io
标签: php javascript mysql ajax