目前设备有个上位机软件 软件负责和下位机通信收集数据( CAN ) 并且把数据推送到服务器进行运算( dubbo consumer ) zookeeper 和 dubbo service provider 均在服务器上
项目是 springboot 的 该软件与下位机通信是个必选功能, 推送数据到服务器是可选功能
但是项目启动的时候 如果没有服务器( zookeeper )在运行 将会报错 org.apache.zookeeper.ClientCnxn : Socket error occurred: 10.130.1.3/10.130.1.3:2181: Connection refused org.apache.zookeeper.ClientCnxn : Opening socket connection to server 10.130.1.3/10.130.1.3:2181. Will not attempt to authenticate using SASL (unknown error) 并且循环 无法进入程序执行下位机收集程序。主线程无法继续
如果项目正在运行中 zookeeper 掉线则虽然会报错不影响其他线程运行
如何可以项目中 没有 zookeeper 但是依旧能运行 (可以不断报错) 当有 zookeeper 的时候 会自动恢复 dubbo client 的功能
1
securityCoding 2021-03-31 10:04:51 +08:00
dubbo 可以选用多种注册中心
1. redis 2. zookeeper 3.直连 参考文档 https://dubbo.apache.org/zh/docs/v2.7/user/examples/explicit-target/ |