Dubbo+Zookeeper簡介

 Dubbo是一個分佈式服務框架。Zookeeper也是一個分佈式的服務框架,它被作爲作爲Dubbo服務的註冊中心。Dubbo能與Zookeeper做到集羣部署,當提供者出現斷電等異常停機時,Zookeeper註冊中心能自動刪除提供者信息,當提供者重啓時,能自動恢復註冊數據,以及訂閱請求。


一、使用背景

大規模服務化之前,應用可能只是通過RMI或Hessian等工具,簡單的暴露和引用遠程服務,通過配置服務的URL地址進行調用,通過F5等硬件進行負載均衡。
(1) 當服務越來越多時,服務URL配置管理變得非常困難,F5硬件負載均衡器的單點壓力也越來越大。
此時需要一個服務註冊中心,動態的註冊和發現服務,使服務的位置透明。
並通過在消費方獲取服務提供方地址列表,實現軟負載均衡和Failover,降低對F5硬件負載均衡器的依賴,也能減少部分成本。
(2) 當進一步發展,服務間依賴關係變得錯蹤複雜,甚至分不清哪個應用要在哪個應用之前啓動,架構師都不能完整的描述應用的架構關係。
這時,需要自動畫出應用間的依賴關係圖,以幫助架構師理清理關係。
(3) 接着,服務的調用量越來越大,服務的容量問題就暴露出來,這個服務需要多少機器支撐?什麼時候該加機器?

二、安裝與配置

1.在Linux上安裝Zookeeper
 在http://www.apache.org/dist/zookeeper/上下載安裝上適合的Zookeeper版本。然後到{soft}/conf下拷貝配置文件zoo_sample.cfg並改名爲zoo.cfg。修改其中的配置參數:
clientPort:監聽客戶端連接的端口。
tickTime:基本事件單元,以毫秒爲單位。它用來控制心跳和超時,默認情況下最小的會話超時時間爲兩倍的 tickTime。
2.啓動Zookeeper
# ./bin/zkServer.sh start


3.在Linux上安裝Dubbo
未完待續


三、總結

通過上面的介紹,我們經過思考就會發現整個的實現原理是十分簡單的。經典的生成者消費者模式,通過在成功的調用層和實現層中間添加一個接口層,然後將對接口的調用都交給Dubbo+Zookeeper進行管理,就能實現調用與實現的分離,進行分佈式部署


源碼來源: minglisoft.cn/technology


發佈了39 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章