記錄一次dubbo調用異常:No provider available for the service


業務需要提供一個接口。需要用dubbo協議的接口,我提供接口后部署在了測試環境,然后提供接口信息給對方,然而對方始終調不通。

又測試環境的doubboadmin異常,即使服務注冊成功也查不到注冊服務的任何信息,我只好問運維要了注冊中心機器的用戶密碼自己登上去看,命令如下:

1)cd /opt/zookeeper/bin

  cd命令轉到zookeeper所在位置的bin目錄

2).zkCli.sh -server ip:port

  進入blablabla

3)ls /dubbo

羅列出所有dubbo服務

4)ls /dubbo/com.blablabla.YourService/provider

打印出你的服務提供者信息,provider換成consumer則打印出你的服務消費者信息

通過上述查詢查到了我的dubbo服務存在提供者列表中,但是對方始終調不通,一直提示No provider available for the service。

於是我自己本地寫代碼調用測試的服務,發現也報相同的錯誤,實在想不通。

於是我把協議dubbo接口的協議換成了json,寫代碼發現可以調得通。寫到這里,敏感的童靴也許就發現問題所在了,沒錯,json協議和dubbo協議用的端口號不一樣,有可能是訪問不了dubbo的端口號。

於是乎,

telnet [IP][空格][端口號] 例如 telnet 192.168.1.133 8080

果然,端口不通。

然后和運維人員申請權限,至此,折磨我兩天的問題終於解決了。

還有一個遺留問題,dubbo協議的接口如何測起來方便點?正在研究DubboClient和JMETER···


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM