Java 服务器中每个游戏房间的线程?

Thread For Each Game Room In Java Server?

我正在开发一款多人游戏,它有一个大厅,人们可以在其中加入不同的游戏。

我很好奇是否应该为每个游戏室创建一个线程。

我正在使用 java.io,所以我已经为每位玩家准备了一个帖子。

即使每个线程上的负载都不重,但有很多线程会降低我的服务器速度吗?

如果我为 100 个玩家和 30 个房间托管一个服务器,平均虚拟服务器可以同时处理 150 个线程吗?还是会影响游戏体验?

这是一款实时游戏,每次位置更新 (UDP) 都需要即时消息传送吗?

线程(如您所知)只是允许任务同时 运行。拥有大量线程并不总是对服务器速度有帮助或不利,这受到其他因素的限制,例如您的互联网速度或计算机的处理能力。另一边的人的游戏玩法将 运行 与计算机处理所有请求的速度一样快,即使您有 10000 个线程,它们也都需要处理能力和互联网连接。

简而言之,服务器和client/s的速度会受到其他人使用您的服务器的影响,速度会受到您的互联网连接速度的限制and/or 你的 CPU 力量。

如果这没有回答您的问题,请更清楚地定义实际问题,而不是问很多笼统的问题。

编辑: 阅读您的评论后,我的建议是:做任何您认为最适合服务器的事情。拥有大量股线不会对您的服务器产生好坏影响。 :)