可能一
首先檢查Linux系統中zookeeper是否開啓
//需要進入zookeeper文件裏找到zkServer
//查看是否開啓
./zkServer status
如果沒有開啓
./zkServer start
可能二
看看maven項目中的的配置文件是否正確
<!-- 當前應用名稱,用於註冊中心計算應用間依賴關係,注意:消費者和提供者應用名不要一樣 -->
<dubbo:application name="dubbodemo_provider" />
<!-- 連接服務註冊中心zookeeper ip爲zookeeper所在服務器的ip地址-->
<dubbo:registry address="zookeeper://192.168.80.142:2181"/>
<!-- 註冊 協議和port 端口默認是20880 -->
<dubbo:protocol name="dubbo" port="-1"></dubbo:protocol>
<!-- 掃描指定包,加入@Service註解的類會被髮布爲服務 -->
<dubbo:annotation package="com.zyf.dubbo.service.impl" />
zookeeper的地址爲Linux中的IP地址
port=-1意思是隨機端口號
可能三
沒有修改文件,運行時系統找不到指定文件
進入zookeeper目錄,創建data目錄
mkdir data
記錄此目錄
pwd /root/zookeeper-3.4.6/data
進入conf目錄 ,把zoo_sample.cfg 改名爲zoo.cfg
mv zoo_sample.cfg zoo.cfg
打開zoo.cfg文件, 修改data屬性:dataDir=/root/zookeeper-3.4.6/data
可能四
防火牆問題,需要在防火牆內添加端口協議,或者直接停止防火牆
//關閉防火牆
service iptables stop
最後一個奇葩問題
修改當前網絡設置的活躍度
將自動躍點的的對勾取消,然後將接口活躍點數設置越低越好
原因:在搜尋zookeeper的端口時可能沒有去搜尋而在等待,躍點數越低會優先使用。