问题描述
我有一个Java代码,其中mqtt客户端连接到代理并订阅主题。
我正在尝试使用订阅我的第一个代码的每个客户端的线程,从8个mqtt客户端发布8000条消息,从另一个Java代码为每个客户端发布1000条消息。
我遇到了一些问题:
首先,发布8000条消息大约需要9分钟,而发布1000条消息需要2分钟,每个客户端需要125条消息。我觉得太多了,我该怎么做才能减少这段时间?
这是我在第一个代码中订阅了一条消息之后,我在不同主题中发布了2条消息。订阅这8000条消息并在第一个代码中发布时,我在第一个代码中遇到client is not connected (32104)
错误,并且连接丢失事件不会触发,因此无法再次连接。我想知道为什么它不触发,我该怎么做才能触发该事件。
我什至在发布第一个代码之前检查客户端是否已连接,如果未连接,我使用client.reconnect()
会给我Client is currently disconnecting (32102)
错误。
这是我在第一个代码中为客户端设置的连接选项:
conOpt.setMaxInflight(10000);
conOpt.setAutomaticReconnect(true);
client_pub = new MqttClient(brokerUrl,clientId + "_pub",dataStore);
client_pub.connect(conOpt);
client_sub = new MqttClient(brokerUrl,clientId,dataStore);
client_sub.connect(conOpt);
client_sub.subscribe(Topic);
client_sub.setCallback(callback);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)