场景描述:在搭建springboot+dubbo+zookeeper 时,项目启动报错如下图:
java.net.ConnectException: 拒绝连接
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:701)
at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:361)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1081)
主要原因:刚学习使用zookeeper,zk安装在本地,网上查找是因为zk没有正常关闭,所以重修修改了zoo.cfg配置文件的端口号,重新启动
由于安装在本地,使用root 权限开启服务。
连接客户端查看连接情况
发现还是之前的默认端口号2181,先不管,在查看zk进程情况,查看2180的端口号
sudo lsof -i:端口号
发现已经存在进程,将dubbo的配置更改,
再次启动成功连接
总结:
1.上次没有正常关闭zk,一定要正常关闭,使用zkServer stop
2.出现问题后,使用的开启和关闭的命令是 zkServer startup ,zkServer shutdown 这种命令不会报错,输出信息是
正常命令是:start/stop 后面还会有 Stopping zookeeper ... STOPPED /STARTED 信息输出才是真正启动或关闭