Springboot+Dubbo+Zookeeper系统搭建

官方文档

搭建dubbo系统demo大致三个步骤,如下:

  第一步:安装zookeeper,并搭建zookeeper集群;

  第二步:创建service服务,其中包括api和providerl两个模块;

  第三步:创建client系统调用服务,测试;

 话不多说,开始搭建!


第一步:安装zookeeper,并搭建zookeeper集群;

  这不是本文重点,就不过多描述,请自行百度;


第二步:创建service服务,其中包括api和providerl两个模块;

  1,创建服务order--service,为maven的quickstart工程;

    

  2,创建子模块order-api,为maven的quickstart工程,以jar包形式提供用于依赖的实体类或接口类;

  3,创建子模块order-provider,为spring-boot工程,不需要依赖boot的其它组件;

    

   4,在order-api建立IOrderService接口,

      

    5,在order-provider的pom.xml依赖order-api的jar包,及dubbo/zookeeper/日志等, 并新建OrderServiceImpl类;

<dependency>
<groupId>com.example.dubbo</groupId>
<artifactId>order-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<!--dubbo-->
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo</artifactId>
<version>2.7.7</version>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.7.7</version>
</dependency>
<!--连接zookeeper-->
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>2.12.0</version>
</dependency>

<!--日志依赖-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.29</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>

     6,子模块order-provider 新建OrderServiceImpl类,并添加@DubboService注解;

    

    7,添加配置文件;

#扫描对应的注解
dubbo.scan.base-packages=com.example.dubbo

#项目
dubbo.application.name=order-service

#服务
dubbo.protocol.name=dubbo
dubbo.protocol.port=20880
#dubbo.protocol.host=192.168.1.113

#注册中心
dubbo.registry.address=zookeeper://192.168.0.18:2181?backup=192.168.0.17:2181,192.168.0.16:2181
dubbo.registry.timeout=50000

#元数据
#dubbo.registry.simplified=true
#dubbo.metadata-report.cycle-report=true
#dubbo.metadata-report.address=zookeeper://192.168.0.18:2181?backup=192.168.0.17:2181,192.168.0.16:2181

     8,启动服务,在zookeeper中查看是否注册成功;

  


第三步:创建client系统调用服务,测试;

   1,创建order-user系统,为spring-boot工程,依赖web;

    

  2,在order-user的pom.xml文件中引用

    <dependency>
            <groupId>com.example.dubbo</groupId>
            <artifactId>order-api</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

        <!--dubbo-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo</artifactId>
            <version>2.7.7</version>
        </dependency>
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>2.7.7</version>
        </dependency>

        <!--连接zookeeper-->
        <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>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.zookeeper</groupId>
                    <artifactId>zookeeper</artifactId>
                </exclusion>
            </exclusions>
            <version>2.12.0</version>
        </dependency>

        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.10</version>
        </dependency>

     3,创建controller类,提供接口访问,并通过@Reference调用远程服务 。

    

     4,设置order-user的配置文件

#扫描注解
dubbo.scan.base-packages=com.example.demo

#项目
dubbo.application.name=order-user

#注册中心
dubbo.registry.address=zookeeper://192.168.0.18:2181?backup=192.168.0.17:2181,192.168.0.16:2181

     5,启动并访问http://localhost:8080/orderInfo , 访问成功,大功告成!

       

更多相关内容,请移步 Dubbo的基本使用

原文地址:https://www.cnblogs.com/hero123/p/13152137.html