javascript – 用于低延迟网页游戏的HTTP或Websocket?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 用于低延迟网页游戏的HTTP或Websocket?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1549字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 用于低延迟网页游戏的HTTP或Websocket?](/upload/InfoBanner/zyjiaocheng/809/cad5df3d494644cba026c856a723399f.jpg)
我是网络开发的新手,我只是想知道一些性能比较.
我正在网上建立一个俄罗斯方块战斗游戏.大多数游戏逻辑都在服务器内部,服务器是用C构建的.对于客户,我打算使用cocos2d-js,这基本上是javascript.
玩家的行为会影响对手.首先,用户的输入需要正确到达服务器,服务器将输入应用于逻辑,并将新的游戏状态发送回客户端.客户端只需要在屏幕上表示精灵.
我最初的计划是使用TCP套接字实现它,因为它可能需要低延迟.但是,我刚刚意识到我们不在网络上使用TCP套接字.
在这种应用程序中使用HTTP连接是否可行?
我应该试试网络套接字吗?
优缺点都有什么?
解决方法:
你当然可以使用HTTP,但对于实时通信,最好的选择是使用websockets.
原始套接字(又称TCP套接字)不是W3C标准的一部分.
虽然有些浏览器有implemented个浏览器,但我建议您不要使用它们,除非您不关心使用该特定浏览器锁定应用程序.
通常,使用Websockets是您的最佳选择,它们提供与原始套接字相同的性能,并且更易于使用JS.
不幸的是,使用C服务器可能会更复杂,因为您的服务器必须实现协议,您可以在互联网上找到一些实现,例如this.
或者,如果您希望与客户端/服务器进行更简单的集成,则可以尝试使用Node.js来实现服务器逻辑,并使用Socket.io库来处理通信,这也将优雅地处理不兼容的浏览器.请注意,Socket.io使用不同的protocol,因此如果您想避免执行大量额外工作,我建议您不要尝试将其与当前的C服务器一起使用.
总结一下
原始(TCP)套接字
>优点:更容易与您当前的C服务器集成
>缺点:浏览器支持不保证,不是(网络)标准,需要更多工作进行同步,通信等.
的WebSockets
>优点:性能与TCP套接字相同,更易于实现客户端
>缺点:您可能需要在服务器实现上做更多工作
我个人的建议是尽可能避免使用TCP套接字,并坚持标准.
编辑:显然,TCP套接字might最终成为W3C标准,API仍然是草稿(和最近的一个),所以我仍然建议不要使用它们(最新的Chrome有实验性实现).
内容总结
以上是互联网集市为您收集整理的javascript – 用于低延迟网页游戏的HTTP或Websocket?全部内容,希望文章能够帮你解决javascript – 用于低延迟网页游戏的HTTP或Websocket?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。