dubbo的redis注冊中心配置和注意事項
-
配置provider和consumer項目的pom.xml,增加如下2個依賴:
org.apache.commons commons-pool2 2.4.3
注意:
1)一定是commons-pool2依賴不能使用commons-pool
2)jedis不能太低,要和dubbo包匹配,否則dubbo不支持
- 對配置文件的改造
Privider,consumer,dubbo-admin,dubbo-monitor需要更改注冊中心地址為redis注冊中心的地址,例如:<dubbo:registry address="redis://127.0.0.1:6379"/>
備注:如果需要dubbo-admin/dubbo-monitor也連接redis注冊中心,需要拷貝相應的jar包到lib目錄。
- 測試
普通的測試過程。
注意:Provider和consumer退出以后,redis里面仍然有注冊信息,如下圖:
- 測試異常
1)第一次走流程時provider/consumer/redis均無任何異常
2)在什么都沒更改的情況下,第二次走流程,tomcat啟動時有如下異常:
但是沒有影響程序執行,解決方案未定。
3)在什么都沒更改的情況下,第三次走流程,tomcat啟動時如下異常,該異常影響了程序執行,服務不可訪問,如下圖:
備注:tomcat版本7.0.77,provider/consumer/redis均在本地啟動。重新在eclipse發布或者刪除tomcat重新配置或者刪除tomcat/work目錄內容均無解決該問題。
4)provider端始終無異常
5)其他異常
調用都成功了,keys *查不到consumer,但程序正常執行,如下:
第一次啟動tomcat的時候沒有成功,第二次一定報這個錯誤。把provider關閉然后再次重啟,這時再啟動tomcat就可以解決。
獲取更多資源請關注微信公眾號:AKA程序王