成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Spring Boot 2.x (十五):Dubbo + Zookeeper + 新版Dubbo A

DobbyKim / 1437人閱讀

摘要:簡(jiǎn)介是阿里巴巴公司開源的一個(gè)高性能優(yōu)秀的服務(wù)框架,使得應(yīng)用可通過(guò)高性能的實(shí)現(xiàn)服務(wù)的輸出和輸入功能,可以和框架無(wú)縫集成。它提供了三大核心能力面向接口的遠(yuǎn)程方法調(diào)用智能容錯(cuò)和負(fù)載均衡服務(wù)自動(dòng)注冊(cè)和發(fā)現(xiàn)。首先我們需要前往官網(wǎng)下載安裝包。

Dubbo 簡(jiǎn)介

Dubbo是阿里巴巴公司開源的一個(gè)高性能優(yōu)秀的服務(wù)框架,使得應(yīng)用可通過(guò)高性能的RPC實(shí)現(xiàn)服務(wù)的輸出和輸入功能,可以和Spring框架無(wú)縫集成。

它提供了三大核心能力:

面向接口的遠(yuǎn)程方法調(diào)用

智能容錯(cuò)負(fù)載均衡

服務(wù)自動(dòng)注冊(cè)和發(fā)現(xiàn)。

可以看出圖中存在著五種角色:

Provider:服務(wù)提供者

Consumer:服務(wù)消費(fèi)者

Registry:服務(wù)注冊(cè)中心

Monitor:服務(wù)監(jiān)控中心

Container:服務(wù)運(yùn)行的容器

圖上的過(guò)程可以這么來(lái)解釋:

在容器(Container)啟動(dòng)服務(wù)的提供者(Provider)

服務(wù)的提供者(Provider)將服務(wù)以接口的形式注冊(cè)到注冊(cè)中心(Registry)

服務(wù)的消費(fèi)者(Consumer)向注冊(cè)中心訂閱服務(wù)

注冊(cè)中心向服務(wù)的消費(fèi)者返回服務(wù)的提供者提供的服務(wù)接口(異步)

服務(wù)的消費(fèi)者去調(diào)用服務(wù)的提供者(同步)

監(jiān)控中心負(fù)責(zé)統(tǒng)計(jì)服務(wù)的調(diào)用次數(shù)和調(diào)用時(shí)間的日志服務(wù)。

這里我們采用 zookeeper 作為服務(wù)注冊(cè)中心,這里我查閱官方文檔發(fā)現(xiàn) Redis 也可以作為Dubbo的注冊(cè)中心,只不過(guò)在應(yīng)用中比較少見,而且官方文檔中也說(shuō)明了:

如果我們想用的話,只需要把dubbo.registry.addrss的值改為redis://127.0.0.1:6379即可使用。

理論到這里,下面就讓我們來(lái)進(jìn)入實(shí)戰(zhàn)吧~

zookeeper的安裝

這里我是在 Mac OS 環(huán)境下進(jìn)行安裝,你可以在本地安裝虛擬機(jī)來(lái)完成這個(gè)操作。

首先我們需要前往官網(wǎng)下載安裝包。

# 0. 解壓
tar -zxvf zookeeper-3.4.13.tar.gz
# 1. 切換到解壓后的目錄下
cd zookeeper-3.4.13/
# 2. 建立data和logs目錄
mkdir data
mkdir logs
# 3. 復(fù)制zoo_sample.cfg 為 zoo.cfg
cd conf/
cp zoo_sample.cfg zoo.cfg
# 4. 修改配置
vi zoo.cfg
dataDir=剛剛新建的data目錄的絕對(duì)路徑
logDir=剛剛新建的data目錄的絕對(duì)路徑
# 5. 啟動(dòng)
cd ../bin
./zkServer.sh start
# 6. 檢測(cè)是否啟動(dòng)成功
./zkServer.sh status
實(shí)例 編寫Provider

引入我們項(xiàng)目需要的Maven依賴:



    io.dubbo.springboot
    spring-boot-starter-dubbo
    1.0.0

然后對(duì)注冊(cè)中心以及服務(wù)接口包的暴露的配置

spring.dubbo.application.name=provider
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=27899
spring.dubbo.scan=indi.viyoung.dubbo.provider.service

編寫Service接口和實(shí)現(xiàn)類:

public interface TestService {
    String test();
}
@Service
public class TestServiceImpl implements TestService {

    @Override
    public String test() {
        return "Hello Wolrd";
    }
}

需要注意的是這里的Service注解必須是dubbo包下的喲,可千萬(wàn)別寫錯(cuò)了!

編寫Consumer

同樣要引入依賴:


    io.dubbo.springboot
    spring-boot-starter-dubbo
    1.0.0

Consumer的配置的話比較少:

spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181

直接在Controller中引用

public class TestController {


    @Reference
    private TestService testService;

    @RequestMapping()
    public String hello() {
        return testService.test();
    }
}

注意這里的@Reference注解不要寫錯(cuò),應(yīng)該是Dubbo包下的!

然后把項(xiàng)目啟動(dòng)后,我們?cè)L問(wèn)一下:

Nice,訪問(wèn)成功!

下面,我們來(lái)學(xué)習(xí)一下Dubbo-Admin的使用

Dubbo-Admin

Dubbo-Admin之前給我的感覺就是沒有UI的樣子:


大概就長(zhǎng)這個(gè)樣子,賊丑,但是不知道啥時(shí)候悄悄摸摸的更新了一波,變得讓顏值控也是非常滿意,而且支持jar包啟動(dòng),不用再去多帶帶的安裝Tomcat~

git clone https://github.com/apache/incubator-dubbo-ops.git

首先從Git上把這個(gè)項(xiàng)目拉下來(lái),用IDEA打開:

只需要添加一個(gè)端口號(hào)的配置,然后使用左側(cè)的maven打包工具打包:

然后去dubbo-admin-server的target的目錄下使用以下命令:

 java -jar dubbo-admin-server-0.1.jar >run.log &

然后打開瀏覽器,輸入localhost:7070

對(duì)比之前的UI簡(jiǎn)直強(qiáng)了無(wú)數(shù)倍,而且賊方便!

具體的功能大家可以跟著操作之后去探討,這里就不再展開來(lái)說(shuō)了。

今天的文章就到這里,下面宣布一個(gè)好消息:

活動(dòng)通知

原定于粉絲達(dá)到一定數(shù)量后做送書活動(dòng)回饋大家,由于本公號(hào)博主真愛技術(shù)佛系漲粉,無(wú)運(yùn)營(yíng)無(wú)套路,所以增粉速度超~級(jí)~慢~,原定目標(biāo)短時(shí)間內(nèi)無(wú)法達(dá)成,因此決定清明小長(zhǎng)假過(guò)后就開啟送書活動(dòng),大家久等了!感謝大家的信任支持與相伴,筆芯~

掃碼即可參加活動(dòng)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/76069.html

相關(guān)文章

  • Spring Cloud Alibaba 新版本發(fā)布:眾多期待內(nèi)容整合打包加入!

    摘要:在之后,也終于發(fā)布了最新的版本。該版本距離上一次發(fā)布,過(guò)去了整整個(gè)月下面就隨我一起看看,這個(gè)大家期待已久的版本都有哪些內(nèi)容值得我們關(guān)注。如果是用戶,同時(shí)也是阿里云這些產(chǎn)品的用戶,那么直接使用還是非常方便的。 在Nacos 1.0.0 Release之后,Spring Cloud Alibaba也終于發(fā)布了最新的版本。該版本距離上一次發(fā)布,過(guò)去了整整4個(gè)月!下面就隨我一起看看,這個(gè)大家期...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • Dubbo Spring Cloud 重塑微服務(wù)治理

    摘要:在服務(wù)治理方面,相較于而言,并不成熟。遺憾的是,往往被部分開發(fā)者片面地視作服務(wù)治理的框架,而非微服務(wù)基礎(chǔ)設(shè)施。因此,建議開發(fā)人員將或者遷移為服務(wù)。因此,下一步需要將其配置服務(wù)遠(yuǎn)程。當(dāng)服務(wù)提供方啟動(dòng)后,下一步實(shí)現(xiàn)一個(gè)服務(wù)消費(fèi)方。 原文鏈接:Dubbo Spring Cloud 重塑微服務(wù)治理,來(lái)自于微信公眾號(hào):次靈均閣 摘要 在 Java 微服務(wù)生態(tài)中,Spring Cloud1 成為...

    wh469012917 評(píng)論0 收藏0
  • 超詳細(xì),新手都能看懂 !使用SpringBoot+Dubbo 搭建一個(gè)簡(jiǎn)單的分布式服務(wù)

    Github 地址:https://github.com/Snailclimb/springboot-integration-examples ,歡迎各位 Star。 目錄: 使用 SpringBoot+Dubbo 搭建一個(gè)簡(jiǎn)單分布式服務(wù) 實(shí)戰(zhàn)之前,先來(lái)看幾個(gè)重要的概念 什么是分布式? 什么是 Duboo? Dubbo 架構(gòu) 什么是 RPC? 為什么要用 Dubbo? 開始實(shí)戰(zhàn) 1 ...

    chengtao1633 評(píng)論0 收藏0
  • SpringBoot+Dubbo實(shí)戰(zhàn)demo

    摘要:文件引入相關(guān)依賴需要引入接口的相關(guān)依賴包。服務(wù)提供者,包含真正的服務(wù)實(shí)現(xiàn)代碼服務(wù)提供者啟動(dòng)類編寫注意不要忘記加上注解開啟的自動(dòng)配置。前言搭建一個(gè)SpringBoot+Dubbo+zookeeper的demo完整代碼見:github.com/Caizhenhao/…1. 安裝zookeeper環(huán)境搭建 zookeeper 之前要確保當(dāng)前的服務(wù)器已經(jīng)有 JDK 環(huán)境。我使用的是阿里云服務(wù)器注意:...

    simon_chen 評(píng)論0 收藏0
  • Dubbo Cloud Native 實(shí)踐與思考

    摘要:可簡(jiǎn)單地認(rèn)為它是的擴(kuò)展,負(fù)載均衡自然成為不可或缺的特性。類似的特性在項(xiàng)目也有體現(xiàn),它是另一種高性能代理的方案,提供服務(wù)發(fā)現(xiàn)健康和負(fù)載均衡。 Dubbo Cloud Native 實(shí)踐與思考 分享簡(jiǎn)介 Cloud Native 應(yīng)用架構(gòu)隨著云技術(shù)的發(fā)展受到業(yè)界特別重視和關(guān)注,尤其是 CNCF(Cloud Native Computing Foundation)項(xiàng)目蓬勃發(fā)展之際。Dubbo...

    邱勇 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<