今天搞的一個dubbo服務,暴漏出來了,但是consumer端啟動就報這個錯,排查過程記錄一下
一、啟動zkCli 利用命令查看
ls / ls /dubbo
繼續查看
ls /dubbo/com.witown.remote.service.RemoteLoginService/providers
ls /dubbo/com.witown.remote.service.RemoteLoginService/consumers
發現新的dubbo服務RemoteLoginService注冊成功,providers和consumers都有值,這里應該不是服務的問題。
二、查端口20880
telnet 192.168.163.1:20880
正常,防火牆又沒開,說明不是端口的問題。
三、zookeeper路徑
每當一個服務提供者部署后都要將自己的服務注冊到zookeeper的某一路徑上,注冊格式為:
/{service}/{version}/{ip:port}
比如我們的RemoteLoginService部署到兩台機器,那么zookeeper上就會創建兩條目錄:
- /RemoteLoginService/1.0/192.168.163.1:16888
- /RemoteLoginService/1.0/192.168.163.2:16888
service正常,ip:port正常,尼瑪這不是version的問題么,一檢查,provider 加version了,consumer沒加,哇靠,粗心大意了,consumer端加上一致的版本號,重新啟動,問題解決。