dubbo項(xiàng)目實(shí)戰(zhàn)

一、案例說(shuō)明

相信有很多小伙伴都知道,dubbo是一個(gè)分布式、高性能、透明化的RPC服務(wù)框架,提供服務(wù)自動(dòng)注冊(cè)、自動(dòng)發(fā)現(xiàn)等高效服務(wù)治理方案,dubbo的中文文檔也是非常全面的,如下圖所示:

二、Dubbo基礎(chǔ)介紹與環(huán)境搭建

??? 1.Dubbo基礎(chǔ)介紹

? ?? Dubbo管理架構(gòu)的變化如圖:

?通過(guò)dubbo監(jiān)控中心和后臺(tái)管理可以很好的監(jiān)控dubbo服務(wù),監(jiān)控服務(wù)端服務(wù)和客戶端調(diào)用情況,調(diào)用次數(shù),調(diào)用日志,方便問(wèn)題查找。

2.環(huán)境搭建

安裝zookeepe解壓(zookeeper-3.4.8.tar.gz)得到如下:


然后進(jìn)入conf將zoo_sample.cfg改名成zoo.cfg。并相關(guān)如下內(nèi)容:


該目錄為存放數(shù)據(jù)的目錄。然后啟動(dòng),在bin目錄下:



三、工程創(chuàng)建

1、搭建B工程

1.導(dǎo)入依賴


2.創(chuàng)建對(duì)象


3.創(chuàng)建服務(wù)


4.編寫(xiě)Dubbo的配置文件

位置我放在根目錄下dubbo/dubbo-server.xml,內(nèi)容如下:


5.編寫(xiě)Web.xml

6.啟動(dòng)tomcat

在控制臺(tái)中將會(huì)看到如下內(nèi)容:


可以看到,已經(jīng)將UserService服務(wù)注冊(cè)到zookeeper注冊(cè)中心,協(xié)議采用的是dubbo。


2、搭建A工程

1.拷貝基本文件

從b系統(tǒng)中拷貝User對(duì)象、UserService接口到a系統(tǒng)

.

2.編寫(xiě)Dubbo的配置文件

3.編寫(xiě)UserService測(cè)試用例

查看效果如下:

????????????? 可以看到,已經(jīng)查詢到10條數(shù)據(jù),那么,也就是說(shuō)A系統(tǒng)通過(guò)B系統(tǒng)提供的服務(wù)獲取到了數(shù)據(jù)。

3、解決代碼重復(fù)問(wèn)題

我們可以看到,在上面的案例中User實(shí)體和服務(wù)接口兩個(gè)項(xiàng)目都需要使用,代碼復(fù)用不高。那么我們可以將該部分代碼抽取出來(lái)打成包,以供所有系統(tǒng)使用。故可以在創(chuàng)建一個(gè)工程項(xiàng)目名為dubbo-b-api。然后將相關(guān)的代碼都放到該項(xiàng)目中,再在其它項(xiàng)目中導(dǎo)入該項(xiàng)目依賴即可。這也是我們?cè)谡鎸?shí)項(xiàng)目中應(yīng)該做的事情,因?yàn)檎{(diào)用方未必知道細(xì)節(jié)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容