Java 多个JVM之间的通信

Java 多个JVM之间的通信,java,Java,我知道,伙计们, 我对java中多个JVM之间的通信有一些问题。 然后我公开我的场景。 我有1个jvm、服务器和其他jvm、客户端。当客户端处于活动状态时,必须连接到服务器,并且当服务器向所有连接的客户端发送信息时。 这是异步发生的 我想到了使用jms。你能告诉我这是一个好的选择还是使用经典插座更好 还像我说的那样使用jms向一个队列中的所有消费者发送消息吗 谢谢,很抱歉我的英语不好 例如: ` 这是一个例子: public class JmsMessageListenerExample {

我知道,伙计们, 我对java中多个JVM之间的通信有一些问题。 然后我公开我的场景。 我有1个jvm、服务器和其他jvm、客户端。当客户端处于活动状态时,必须连接到服务器,并且当服务器向所有连接的客户端发送信息时。 这是异步发生的

我想到了使用jms。你能告诉我这是一个好的选择还是使用经典插座更好

还像我说的那样使用jms向一个队列中的所有消费者发送消息吗

谢谢,很抱歉我的英语不好

例如: ` 这是一个例子:

public class JmsMessageListenerExample {
    public static void main(String[] args) throws URISyntaxException, Exception {
        BrokerService broker = BrokerFactory.createBroker(new URI(
                "broker:(tcp://localhost:61616)"));
        broker.start();
        Connection connection = null;
        try {
            // Producer
            ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
                    "tcp://localhost:61616");
            connection = connectionFactory.createConnection();
            Session session = connection.createSession(false,
                    Session.AUTO_ACKNOWLEDGE);
            Queue queue = session.createQueue("customerQueue");
            String payload = "Important Task";
            Message msg = session.createTextMessage(payload);
            MessageProducer producer = session.createProducer(queue);
            System.out.println("Sending text '" + payload + "'");
            producer.send(msg);

            // Consumer
            MessageConsumer consumer = session.createConsumer(queue);
            consumer.setMessageListener(new ConsumerMessageListener("Consumer"));
            connection.start();
            Thread.sleep(1000);
            session.close();
        } finally {
            if (connection != null) {
                connection.close();
            }
            broker.stop();
        }
    }

}

您将使用哪种协议?WebSocket将满足您的要求。JMS还可以,但更复杂。我想使用TCP。如果您要构建自己的服务器。这将是一个错误的决定。这是可行的,但这将是非常艰苦的工作。@Loc使用袜子?提出卑鄙的建议