java - Eclipse paho 连接到分布式代理

标签 java paho activemq-artemis

我使用 Apache Artemis 作为我的 mqtt 代理。我有一个以主从方式配置的 Artemis 集群。当主服务器发生故障时,备份服务器接管,客户端必须连接到从服务器。主站和从站有不同的IP。

在 eclipse paho 中创建 MqttClient 对象时,是否有一个选项可以指定多个连接 url(主站和从站的地址)?

类似于

MqttClient cl = new MqttClient("LIST OF IPs", "Publisher", new    
MemoryPersistence());

而不仅仅是

MqttClient cl = new MqttClient("tcp://localhost:1883", "Publisher", new 
MemoryPersistence());

这样当到第一个地址的连接失败时,就会尝试连接到下一个地址。

有人可以指导一下吗?非常感谢。

最佳答案

许多语言的客户端库都有此选项。可以在此处检查该列表: https://www.eclipse.org/paho/index.php?page=downloads.php

对于标记为“高可用性”的客户端,支持使用“MqttConnectOptions”指定的 URL 列表。

示例:

        String[] URIs = {"address1","address2"};
        MqttConnectOptions mqttConnectOptions = new MqttConnectOptions();
        mqttConnectOptions.setServerURIs(URIs);

关于java - Eclipse paho 连接到分布式代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39034316/

相关文章:

java - Intellij IDEA 2017.1.5 安装插件时连接超时

java - 如何修复 MQTT 应用程序的内存泄漏?

Wildfly 11 连接到远程 Artemis ActiveMQ 服务器配置

activemq-artemis - 如何解锁 ActiveMQ Artemis 代理

java - 如何将 MySQL 转换为条件查询?

java - 更新时 Hibernate 集合为空

Java 比 C 快 2 倍以上(作为 C++ 的子集)

spring - Eclipse Paho Mqtt - Spring Java 配置

javascript - 使用 IP 地址作为主机名时,Paho MQTT 主机参数无效?

amazon-ec2 - 如何连接到 NAT 后面的 JMS 队列 JBoss EAP 7?