连接(EMQX)mqtt服务器时报错

线下项目连接正常,部署到阿里云服务器的项目也正常连接,仅在安装emqx的服务器上部署的项目连接不上。
具体报错信息,如下:
2022-09-01 15:25:27.791 ERROR 1 — [ main] c.z.iotplatfrom.util.mqtt.MQTTListener : Unable to connect to server

org.eclipse.paho.client.mqttv3.MqttException: Unable to connect to server
at org.eclipse.paho.client.mqttv3.internal.TCPNetworkModule.start(TCPNetworkModule.java:80) ~[org.eclipse.paho.client.mqttv3-1.2.5.jar:na]
at org.eclipse.paho.client.mqttv3.internal.ClientComms$ConnectBG.run(ClientComms.java:724) ~[org.eclipse.paho.client.mqttv3-1.2.5.jar:na]
at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:na]
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399) ~[na:na]
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242) ~[na:na]
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224) ~[na:na]
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:na]
at java.base/java.net.Socket.connect(Socket.java:609) ~[na:na]
at org.eclipse.paho.client.mqttv3.internal.TCPNetworkModule.start(TCPNetworkModule.java:74) ~[org.eclipse.paho.client.mqttv3-1.2.5.jar:na]
… 2 common frames omitted

报错原因:1883端口拒绝连接。
排查过程:
telnet ip 端口号
测试是否正常通信
连接(EMQX)mqtt服务器时报错_第1张图片
这里收到的是拒绝通信
查看了防火墙及开放的端口看了下都没问题
连接(EMQX)mqtt服务器时报错_第2张图片
最后猜想可能是因为是使用docker部署的服务,容器与容器的通信可能有点问题。

最终解决方案:使用容器的ip地址互相访问解决容器与容器之间的通信。

你可能感兴趣的:(springboot,Java后端,服务器,java,运维)