【问题标题】:can server handle this game?服务器可以处理这个游戏吗?
【发布时间】:2019-01-12 18:21:32
【问题描述】:

在我使用 Nodejs 和 Socket.io 的基于网络的多人游戏中, 我想要一些玩家可以摧毁它们的随机盒子。这就是我所做的:

在服务器上,我创建了一个包含随机 x,y 框的对象数组。当玩家连接时,服务器向他发送对象数组,以便客户端在客户端渲染盒子。 现在,当玩家破坏其中一个盒子时,它将被破坏的盒子的 x,y 发送到服务器,然后服务器从对象数组中删除该 x,y(对于新玩家)并生成一个新的 x,y(对于要替换的新盒子被破坏的盒子)。最后服务器发送一个新对象,包括被破坏的盒子 x,y 和新的盒子 x,y 并且玩家渲染新盒子并删除被破坏的盒子。

现在这正在工作,但由于我是制作此类多人游戏的新手,我不确定服务器是否可以处理这个问题(服务器上最多有 40 名玩家,地图上有大约 500-800 个盒子和好吧,这只是游戏的一小部分)。我担心性能,所以会有什么问题吗?有更好的方法吗?有什么建议吗?

【问题讨论】:

    标签: node.js server socket.io multiplayer


    【解决方案1】:

    我认为盒子的问题很特别。一般来说,您应该始终牢记可扩展性,并尝试在不同的服务上拆分不同的域。

    但在这种特殊情况下,我会说这取决于您的实现,当然还有您的服务器规格。每秒销毁多少个盒子?您的问题中有很多未知变量。

    【讨论】:

    • 每秒我会说像 10-20 max 30。对于服务器以及我问这个的其他原因,看看什么样的服务器可以处理这个
    • 这对于任何服务器来说听起来都很简单。但也高度取决于您的实施。您的实现是否支持并行处理?我想没有人能给你一个可靠的答案。只需使用非常简单的服务器(本地机器)试一试,看看效果如何。
    猜你喜欢
    • 2015-05-23
    • 2019-02-03
    • 2015-06-09
    • 1970-01-01
    • 2014-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-16
    相关资源
    最近更新 更多