最簡的Dubbo例子部署


dubbo 中包含下面4個核心組件: 生產者、消費者、注冊中心、監控中心。

image

 

簡單部署的模塊關系

生產者、消費者

最簡版本的Dubbo部署只運行Demo Provider和Demo Consumer,它們缺省配置為通過Multicast注冊中心廣播互相發現。

在這種情況下,建議在不同機器上運行,如果在同一機器上,需設置unicast=false:即:multicast://224.5.6.7:1234?unicast=false,否則發給消費者的單播消息可能被提供者搶占,兩個消費者在同一台機器也一樣,只有multicast注冊中心有此問題。

 

監控中心

為了更好的看到相關情況,我們需要增加運行Simple Monitor監控中心,它缺省配置為通過Multicast注冊中心廣播發現Provider和Consumer,並展示出它們的依賴關系,以及它們之間調用的次數和時間。

 

注冊中心

Multicast注冊中心不需要單獨部署一套應用,注冊中心這里也可以將Multicast注冊中心換成Zookeeper注冊中心,安裝Zookeeper Registry后,修改Demo Proivder,Demo Consumer,Simple Monitor三者安裝目錄下的conf/dubbo.properties,將dubbo.registry.address的值改為zookeeper://127.0.0.1:2181,同理,如果換成Redis Registry,值改為redis://127.0.0.1:6379,如果換成Simple Registry,值改為dubbo://127.0.0.1:9090
注意:multicast地址不能配成127.0.0.1,也不能配成機器的IP地址,必須是D段廣播地址,也就是:224.0.0.0到239.255.255.255之間的任意地址

 

參考: http://dubbo.io/Administrator+Guide-zh.htm 

 

生產者的部署

生產者編譯后的部署文件在 github/alibaba/dubbo/dubbo-demo/dubbo-demo-provider/target 目錄下的dubbo-demo-provider-2.5.4-SNAPSHOT-assembly.tar.gz 文件。

解壓縮這個文件 ,並進入這個目錄

tar zxvf dubbo-demo-provider-2.5.4-SNAPSHOT.tar.gz
cd dubbo-demo-provider-2.5.4-SNAPSHOT

配置

vim conf/dubbo.properties

由於是最簡方式測試,我們都放在一台機器上,

  • 啟動  ./bin/start.sh
  • 停止 ./bin/stop.sh
  • 重啟 ./bin/restart.sh
  • 調試 ./bin/start.sh debug
  • 系統狀態: ./bin/dump.sh
  • 標准輸出: tail -f logs/stdout.log

總控入口

./bin/server.sh start
./bin/server.sh stop
./bin/server.sh restart
./bin/server.sh debug
./bin/server.sh dump

 

./bin/start.sh
Starting the demo-provider ......OK!
PID: 5683
STDOUT: logs/stdout.log

 

消費者部署也類似。

 

 

修改注冊中心地址配置

我們這里例子中,注冊中心是用的multicast注冊中心,相關的配置為:multicast://224.5.6.7:1234

有關廣播注冊中心的信息請看這篇博客: http://www.cnblogs.com/ghj1976/p/5276452.html 

由於生產者、消費者、監控中心都是部署在一台機器的,我們整個廣播是對應的下面這個虛擬網卡進行數據交換的(ifconfig中讀取的配置信息):

vnic1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=3<RXCSUM,TXCSUM>
    ether 00:1c:42:00:00:09
    inet 10.37.129.2 netmask 0xffffff00 broadcast 10.37.129.255
    media: autoselect
    status: active

 

服務提供者配置

image

消費者配置

image

簡單監控中心配置

image

 

 

 

網絡監控

生產者、消費者部署在一台機器, 使用 multicast://224.5.6.7:1234?unicast=false 配置, 通過wireshark的 Loopback 監控如下圖:

過濾條件 tcp.port==20880 || tcp.port == 57450

image

使用這兩個端口是因為在dubbo的日志中,打出的就是使用的這兩個端口:

image

 

 

 

Dubbo 簡單監控中心

dubbo 自帶的監控中心,安裝方法類似於生產者的部署, 請參考: http://blog.csdn.net/liwf_/article/details/39053601

我這里安裝的是自行編譯的 dubbo-monitor-simple-2.5.4-SNAPSHOT

http://127.0.0.1:8080/ 

image

參考資料:

http://dubbo.io/Administrator+Guide-zh.htm 

http://dubbo.io/Installation+Tutorial-zh.htm

http://blog.javachen.com/2014/09/24/compile-and-test-dubbo.html


免責聲明!

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



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