一、簡介
dubbo不單單隻是高性能的rpc調用架構,更是soa服務治理的一種方案。
核心:
1. 遠端通信,向本地調用一樣調用遠端方法。
2. 叢集容錯
3. 服務自動發現和注冊,可平滑添加或者删除服務提供者。
二、快速入門
環境:maven,git,jdk
1. 克隆dubbo開源項目
<code>cd ~</code>
<code>git clone https://github.com/alibaba/dubbo.git</code>
2. maven編譯項目
<code>cd ~/dubbo</code>
<code>mvn clean install -dmaven.test.skip ## 跳過測試</code>
下面核心點有:zookeeper作為注冊中心(服務訂閱和釋出依托于注冊中心)、服務生産者(提供服務)項目、服務生産者(提供服務)項目和監控web項目。
過程如下:
3. 下載下傳啟動zk
<code>## 下載下傳解壓</code>
<code>wget http://www.apache.org/dist//zookeeper/zookeeper-3.3.3/zookeeper-3.3.3.tar.gz</code>
<code>tar zxvf zookeeper-3.3.3.tar.gz</code>
<code>## 啟動</code>
<code>cd ../bin</code>
<code>./zkserver.sh start</code>
下面項目遇到target目錄中編譯好的項目為xxx.tar.gz。請自行用下面指令解壓:
<code>tar zxvf xxx.tar.gz</code>
4. 啟動服務消費者
<code>cd ~/dubbo/dubbo-demo/dubbo-demo-consumer/target/dubbo-demo-consumer-2.5.4-snapshot/conf</code>
<code>vim dubbo.properties</code>
<code> - edit: dubbo.registry.adddress=zookeeper://127.0.0.1:2181 ## 更改注冊中心為zk</code>
<code>sh ./start.sh</code>
5. 啟動服務生産者
<code>cd ~/dubbo/dubbo-demo/dubbo-demo-provider/target/dubbo-demo-provider-2.5.4-snapshot/conf</code>
<code> - edit: dubbo.registry.adddress=zookeeper://127.0.0.1:2181</code>
其實到這裡已經o了,可以打開生産者消費者項目的log進行檢視:
## 打開消費者的log
<code>cd dubbo-demo-consumer/target/dubbo-demo-consumer-2.5.4-snapshot/logs</code>
<code>tail -f dubbo-demo-consumer.log</code>
熟悉的hello,world的案例coming…
6. 啟動監控web項目
<code>cd ~/dubbo/dubbo-simple/dubbo-monitor-simple/target/dubbo-monitor-simple-2.5.4-snapshot/conf</code>
<code> - edit: dubbo.registry.adddress=zookeeper://127.0.0.1:2181</code>
<code>cd ../bin./start.sh</code>
<code>## 浏覽器通路</code>
<code>http://127.0.0.1:8080</code>
可以在監控中看到消費者,生産者執行個體等資訊