我正在开发一个网络游戏,用户连接到网络服务器,但游戏逻辑是由游戏服务器完成的。当然还有数据库服务器。
Web 服务器可以连接到游戏服务器并获取所需的数据,然后将客户端重定向到它,然后客户端连接到游戏服务器以发送/获取所需的数据。
游戏服务器也可以从数据库服务器获取数据。
问题是我在 Web 服务器上使用 Java EE,并且我想在游戏服务器上也使用 Java。我应该在游戏服务器上使用什么作为服务器软件?另外,我应该使用什么Java技术来实现游戏逻辑和服务器之间的通信?
与 Web 服务器相比,我可以使用 Servlet、JPA 等。但是,此类应用程序是由 Tomcat 服务器使用 HTTP 协议运行的。我也可以在游戏服务器上使用 HTTP 服务器,但不确定它是否是处理 Web 服务器之间和客户端之间连接的正确解决方案。
编辑: 在游戏服务器上有一个处理游戏逻辑的进程,独立于用户是否连接。游戏服务器与数据库交互。当用户连接时,游戏服务器应该使用恒定连接向用户发送/接收与游戏相关的信息。javaEE 中的 Servlet 允许处理用户 <-> 游戏服务器连接。但是,我如何实现游戏逻辑部分(即必须使用哪些 Java EE 技术),它在游戏服务器上运行,与是否连接用户无关。
EDIT2: 游戏没有动画。然而,它是一个体育管理模拟,具有游戏模拟和球员拍卖实时发生。游戏服务器应处理游戏模拟和玩家拍卖,多个用户可以同时观看和影响(玩家替换、策略更改或拍卖出价)。