【问题标题】:Java RMI server: Running servers with different dataJava RMI 服务器:运行具有不同数据的服务器
【发布时间】:2026-01-04 10:05:02
【问题描述】:

我有一个关于在 JAVA RMI 编程中运行多个服务器的问题。

我应该有 3 个服务器,它们的哈希图中具有相同的功能和不同的数据。

所以我的问题是,我可以为服务器创建一个类并运行多次,还是为服务器创建 3 个不同的类。

【问题讨论】:

    标签: java class sockets server rmi


    【解决方案1】:

    我可以为服务器创建一个类并多次运行

    是的。只需在构造函数中提供不同的HashMap 数据。

    您必须在注册表中以不同的名称注册所有三个实例,或者通过其他一些 RMI 机制使它们可访问。

    与@JunedAhsan 的回答相反,它们都可以共享同一个 TCP 端口,并且默认情况下,如果它们都是从同一个 JVM 导出的,那么它们将共享,并且没有理由不这样做。

    【讨论】:

    • 但我不知道如何运行多个实例。
    • 只要用new创建它们,如果类没有扩展UnicastRemoteObject.就导出它们
    • 感谢您的即时回复。如何启动不同的哈希图?你指的是哪个构造函数?
    • 放下它。你是什​​么意思'哪个构造函数'?我如何评论您尚未发布的代码?