我正在开发一个网络游戏,用户连接到web服务器,但是游戏逻辑是由游戏服务器完成的。当然还有数据库服务器。
Web服务器可以连接到游戏服务器,获取所需的数据,然后将客户端重定向到它,然后客户端连接到游戏服务器,发送/获取所需的数据。
游戏服务器还可以从DB服务器获取数据。
问题是,我在Web服务器上使用Java,我也想在游戏服务器上使用Java。作为服务器软件,我应该在游戏服务器上使用什么?另外,我应该使用什么Java技术来实现游戏逻辑和服务器之间的通信呢?
与Web服务器相比,我可以使用Servlet、JPA等。然而,这种应用程序是由Tomcat服务器使用HTTP协议运行的。我也可以在游戏服务器上使用HTTP服务器,但不确定它是否是处理web服务器之间和客户端之间连接的正确解决方案。
编辑:在游戏服务器上有一个处理游戏逻辑的进程,不管用户是否连接,都是独立的。游戏服务器与数据库交互。当用户连接时,游戏服务器应该使用常量连接向用户发送/接收与游戏相关的信息。javaEE中的Servlets允许处理用户<->游戏服务器连接。但是,如何实现游戏逻辑部分(即必须使用哪些Java技术),它是独立于连接或不连接的用户在游戏服务器上运行的。
EDIT2:游戏没有动画。然而,它是一个体育管理模拟,具有游戏模拟和球员拍卖的实时发生。游戏服务器应该处理游戏模拟和玩家拍卖,多个用户可以同时观看和影响(玩家替换、策略改变或拍卖出价)。
发布于 2013-08-02 04:47:59
您似乎在说,您的最终用户是由容器中的容器(例如Tomcat/防波堤/etc)中的一个Tomcat处理的。如果是这样的话,在您的Servlet中,您就拥有了Java的全部功能。Servlet可以打开到远程游戏服务器的网络连接(插座、WebSocket、HTTP、WebServices 肥皂/休息调用等)。同一个Servlet可以打开到数据库服务器的JDBC连接。
游戏服务器可以用Java构建,但不一定。它所依赖的大多数平台(Ruby、.NET、Objective、Xojo等等)都应该能够响应网络连接,比如套接字或WebServices调用。
https://stackoverflow.com/questions/18008744
复制相似问题