最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springBoot+dubbo+zookeeper實現(xiàn)分布式開發(fā)應(yīng)用的項目實踐

 更新時間:2022年03月11日 10:22:46   作者:咸魚_翻身  
本文主要介紹了springBoot+dubbo+zookeeper實現(xiàn)分布式開發(fā)應(yīng)用的項目實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

環(huán)境搭建

項目結(jié)構(gòu)圖:

在這里插入圖片描述

1.我們首先做好服務(wù)端

pom.xml

   <dependencies>
        <!--導(dǎo)入依賴:Dubbo + zookeeper-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>2.7.3</version>
        </dependency>
        <!--引入zkclient-->
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>
        <!--引入zkclient,可能會日志沖突,還需要剔除日志依賴-->
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-framework</artifactId>
            <version>2.12.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-recipes</artifactId>
            <version>2.12.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.14</version>
            <!--排除這個slf4j-log4j12-->
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

application.properties

server.port=8001
# 服務(wù)應(yīng)用名字
dubbo.application.name=provider-server
# 注冊中心地址
dubbo.registry.address=zookeeper://127.0.0.1:2181
# 哪些服務(wù)要被注冊
dubbo.scan.base-packages=com.wlm.service

TicketService

package com.wlm.service;

public interface TicketService {
    public String getTicket();
}

TicketServiceImpl.java

package com.wlm.service;

import org.apache.dubbo.config.annotation.Service;
import org.springframework.stereotype.Component;

//zookeeper:服務(wù)注冊與發(fā)現(xiàn)
@Service //可以被掃描到,在項目一啟動就自動注冊到注冊中心
@Component //使用了Dubbo后盡量不要用Service注解
public class TicketServiceImpl implements TicketService {
    @Override
    public String getTicket() {
        return "咸魚_翻身";
    }
}

2.啟動服務(wù)端

打開服務(wù)端,開啟之后不要點掉,讓他在后臺運行:

在這里插入圖片描述

執(zhí)行服務(wù)端的jar包,待會我們要監(jiān)控服務(wù)端:

在這里插入圖片描述

運行上面的服務(wù)端代碼,然后去游覽器中查看
http://localhost:7001/

在這里插入圖片描述

3.我們再來做客戶端

pom.xml

<dependencies>
        <!--導(dǎo)入相關(guān)的依賴-->
        <!--導(dǎo)入依賴:Dubbo + zookeeper-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>2.7.3</version>
        </dependency>
        <!--引入zkclient-->
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>
        <!--引入zkclient,可能會日志沖突,還需要剔除日志依賴-->
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-framework</artifactId>
            <version>2.12.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-recipes</artifactId>
            <version>2.12.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.14</version>
            <!--排除這個slf4j-log4j12-->
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

application.properties

server.port=8002
# 消費者去哪里拿服務(wù),需要暴露自己的名字
dubbo.application.name=consumer-server
# 注冊中心的地址,可以在任何電腦上!
dubbo.registry.address=zookeeper://127.0.0.1:2181

TicketService

package com.wlm.service;

public interface TicketService {
    public String getTicket();
}

UserService.java

package com.wlm.service;

import org.apache.dubbo.config.annotation.Reference;
import org.springframework.stereotype.Service;

@Service //放到容器中,注意區(qū)分
public class UserService {
    //想拿到provider-server提供的票,要去注冊中心拿到服務(wù)
    @Reference //引用, pom坐標(biāo),可以定義路徑相同的接口名
    TicketService ticketService;

    public void buyTicket(){
        String ticket = ticketService.getTicket();
        System.out.println("在注冊中心拿到=>"+ticket);
    }
}

ConsumerServerApplicationTests.java

package com.wlm;

import com.wlm.service.UserService;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class ConsumerServerApplicationTests {

    @Autowired
    UserService userService;
    @Test
    void contextLoads() {
        userService.buyTicket();
    }

}

運行ConsumerServerApplicationTests.java結(jié)果:拿到服務(wù)端的”咸魚_翻身“

在這里插入圖片描述

4.總結(jié)

前提:zookeeper服務(wù)已經(jīng)開啟

1.首先提供者提供服務(wù)

  • 導(dǎo)入依賴
  • 配置注冊中心的地址,以及服務(wù)發(fā)現(xiàn)名,和要掃描的包
  • 在想要被注冊的服務(wù)上面增加一個注解@Service

2.消費者如何消費

  • 導(dǎo)入依賴
  • 配置注冊中心的地址,配置自己的服務(wù)名
  • 從遠程注入服務(wù) @Reference

在這里插入圖片描述

到此這篇關(guān)于springBoot+dubbo+zookeeper實現(xiàn)分布式開發(fā)應(yīng)用的項目實踐的文章就介紹到這了,更多相關(guān)springBoot dubbo zookeeper分布式 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mybatis?實現(xiàn)多層級collection嵌套

    mybatis?實現(xiàn)多層級collection嵌套

    這篇文章主要介紹了mybatis?實現(xiàn)多層級collection嵌套,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java讀取網(wǎng)絡(luò)文件的實例代碼

    Java讀取網(wǎng)絡(luò)文件的實例代碼

    這篇文章主要介紹了Java讀取網(wǎng)絡(luò)文件的實例代碼,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Intellj?idea新建的java源文件夾不是藍色的圖文解決辦法

    Intellj?idea新建的java源文件夾不是藍色的圖文解決辦法

    idea打開java項目后新建的模塊中,java文件夾需要變成藍色,這篇文章主要給大家介紹了關(guān)于Intellj?idea新建的java源文件夾不是藍色的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2024-02-02
  • 監(jiān)聽器獲取Spring配置文件的方法

    監(jiān)聽器獲取Spring配置文件的方法

    這篇文章主要為大家詳細介紹了監(jiān)聽器獲取Spring配置文件的方法,很實用的方法,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Java強制保留兩位小數(shù)的四種方法案例詳解

    Java強制保留兩位小數(shù)的四種方法案例詳解

    這篇文章主要介紹了Java強制保留兩位小數(shù)的四種方法案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • 生產(chǎn)環(huán)境NoHttpResponseException異常排查解決記錄分析

    生產(chǎn)環(huán)境NoHttpResponseException異常排查解決記錄分析

    這篇文章主要為大家介紹了生產(chǎn)環(huán)境NoHttpResponseException異常排查解決記錄分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • ServletContext讀取web資源_動力節(jié)點Java學(xué)院整理

    ServletContext讀取web資源_動力節(jié)點Java學(xué)院整理

    這篇文章主要介紹了ServletContext讀取web資源,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Java中利用Alibaba開源技術(shù)EasyExcel來操作Excel表的示例代碼

    Java中利用Alibaba開源技術(shù)EasyExcel來操作Excel表的示例代碼

    這篇文章主要介紹了Java中利用Alibaba開源技術(shù)EasyExcel來操作Excel表的示例代碼,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 基于dubbo中Listener的實現(xiàn)方法

    基于dubbo中Listener的實現(xiàn)方法

    下面小編就為大家?guī)硪黄赿ubbo中Listener的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 在Java8中如何避開空指針異常

    在Java8中如何避開空指針異常

    這篇文章主要給大家介紹了關(guān)于在Java8中如何風(fēng)騷走位的避開空指針異常的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Java8具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評論

阳泉市| 新龙县| 平湖市| 台南县| 勐海县| 武宣县| 剑阁县| 车险| 吉水县| 宾阳县| 东城区| 怀仁县| 宝清县| 鄂伦春自治旗| 仪征市| 民县| 福建省| 兴化市| 镇宁| 健康| 社旗县| 辽中县| 精河县| 辰溪县| 南汇区| 永平县| 汝南县| 静海县| 剑河县| 庆安县| 上蔡县| 枣强县| 奉化市| 阳西县| 体育| 迁安市| 普定县| 黑龙江省| 兴国县| 米林县| 鄂伦春自治旗|