温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot+dubbo+zookeeper的示例分析

发布时间:2021-10-27 16:15:41 来源:亿速云 阅读:199 作者:小新 栏目:开发技术

这篇文章主要介绍springboot+dubbo+zookeeper的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

在dubbo-admin-0.0.1-SNAPSHOT.jar的路径下启动dubbo,java -jar dubbo-admin-0.0.1-SNAPSHOT.jar

springboot+dubbo+zookeeper的示例分析

dubbo-admin-0.0.1-SNAPSHOT.jar的包需要提前打好

启动zookeeper的zkServer.cmd和zkCli.cmd

需要的依赖

 <!-- 导入依赖:zookeeper + dubbo -->
        <!-- https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-spring-boot-starter -->
        <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>
        <!-- 引入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>
            <version>2.12.0</version>
        </dependency>
        <!--  上面两个都是zookeeper服务端的一个依赖-->
        <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>

服务端和消费端都需要这些依赖

服务端

在服务端设置一个服务

springboot+dubbo+zookeeper的示例分析

@Component
@Service // 可以被扫描扫,在项目已启动就注册到注册中心  服务注册与发现
public class TickServiceImp implements TicketService {
    @Override
    public String getTick() {
        return "《今天是个好日子》";
    }
}

这里的@Service是dubbo下的用来吧服务注册到注册中心
@Component用来把类注入到容器中

application.yml配置如下

server:
  port: 8001

#服务应用名字
dubbo:
  application:
    name: provider-server
#注册中心地址
  registry:
    address: zookeeper://127.0.0.1:2181
#那些服务要被注册
  scan:
    base-packages: com.cfz.service

启动服务端,在zookeeper设置的端口http://localhost:7001下查看

springboot+dubbo+zookeeper的示例分析

消费端

首先导入所需依赖(同上文)

设置服务

springboot+dubbo+zookeeper的示例分析

这里的接口要和服务端的相同

Userservice类中如下

@Service //放到容器中
public class Userservice {

    //想拿到provider-server提供的票,需要去注册中心拿服务
    @Reference //引用,pom坐标,可以定义路径相同的接口名
    TicketService ticketService;

    public void buyTicket() {
        System.out.println("在注册中心拿到"+ticketService.getTick());
    }
}

application.yml配置如下

springboot+dubbo+zookeeper的示例分析

以上是“springboot+dubbo+zookeeper的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI