【问题标题】:Java jar application and java web application communication and implementationjava jar应用与java web应用的通信与实现
【发布时间】:2011-06-30 11:27:04
【问题描述】:

我有一个用 Java 编写的多人游戏服务器应用程序,当玩家客户端通过套接字加入多人游戏时,它会连接到他们。服务器应用程序(在 JVM 中运行的 JAR)正在侦听端口(例如 9999)以获取来自客户端的传入连接。

我想添加一个网站来管理整个项目,其中包含从正在运行的游戏服务器获取的信息。一种方法是打开从站点(例如 PHP 套接字)到游戏服务器 (Java) 的套接字,并实现自定义协议以从服务器获取数据。但是这种方法很耗时,因为我需要为要传递给监控网站的每种类型的数据添加支持。

我在想是否有办法用 Java 编写网站并通过直接链接与我的游戏服务器进行通信。我认为 RMI 将是一个解决方案,因为我的 JAR 和我的 WAR 都可以通过它进行通信,但是没有更好的方法在同一个 JAR 文件中构建 Web 应用程序和游戏服务器应用程序吗?这样当我的游戏服务器运行时,Web 应用程序也会运行?

【问题讨论】:

    标签: java jar rmi rpc war


    【解决方案1】:

    您的游戏服务器中应该有一个嵌入式网络服务器。试试 Jetty (http://jetty.codehaus.org/jetty/)。它很容易嵌入到任何 java 应用程序中。

    【讨论】:

      【解决方案2】:

      在我看来,这是拥有管理控制台的最快方式。只需将您的服务器转换为一个战争应用程序,其中包含您的游戏服务器和一个开放的客户端套接字和您的管理页面。要启动您的服务器,只需将其放入 tomcat。

      一种不需要某些自创协议的更简洁的方法是让您的服务器对您想要管理的所有关键对象使用 mbean。但这需要一些编码。

      干杯,斯文

      【讨论】:

        猜你喜欢
        • 2023-03-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多