Dubbo使用Zooker注册服务

一、安装配置Zooker

1.下载Zooker

在apache mirros上下载Zooker :https://mirror.bit.edu.cn/apache/zookeeper/,下载后解压到指定目录

建议下载3.4.14版本,其他版本要下载后缀带bin的压缩包

2.安装配置本地Zooker

解压到指定目录后,进入conf文件夹,将里面的zoo_example.cfg文件重命名为zoo.cfg

 

进入bin目录,编辑zkServer.cmd文件,在zkServer.cmd最后行前加入pause,否则可能会看不到信息,接着双击打开即可运行本地Zookeeper注册服务,最后出现2181端口(默认端口)即运行成功

 

 

 

 

二、IDEA中使用Dubbo进行远程服务调用

1.项目模块介绍

这里有两个boot应用程序,分别用consumer和provider表示,provider向注册中心负责注册服务,它里面的服务是实现service接口中的方法,consumer负责消费,用于调用远程服务,除此之外,两者也可以分别实现自己应用中的服务,结构图如下所示:

 

2.编写外部服务接口

可以在demo下新建一个Module,命名为demo-service,专门负责写供另外应用程序使用的服务接口

demo->new->Module->Maven->Next->命名,在src的main中创建接口方法DemoService

 

3.编写并配置provider应用程序

1)新建provider的启动项

在demo下新建一个Module,命名为demo-dubbo-provider,和前面一样,这里在java下新建一个Boot的启动项

2)zookeeper和dubbo配置

在resources下添加配置文件,在这里配置本地的zookeeper注册中心地址还有端口等一些信息

# Spring boot application
spring.application.name=boot-provider
server.port=9001
logging.level.root=INFO
management.security.enabled=false
​
#Dubbo Qos Config0
dubbo.application.qos-enable=false
# Base packages to scan Dubbo Component: @org.apache.dubbo.config.annotation.Service
dubbo.scan.base-packages=com.vivo
# Dubbo Application
## The default value of dubbo.application.name is ${spring.application.name}
## dubbo.application.name=${spring.application.name}
# Dubbo Protocol
dubbo.protocol.name=dubbo
dubbo.protocol.port=-1
# Dubbo Registry
dubbo.registry.address=zookeeper://127.0.0.1:2181

3)添加demo-service接口的实现类

使用dubbo的Service注解,对这个接口实现类进行服务注册

4)打包成本地jar包

Maven->项目名->install,打包成本地jar包

4.编写consumer消费者程序

1)编写consumer启动项

这里对model和web层进行分离,新建demo-web模块,在这里配置启动项,为consumer的入口

2)调用远程服务方法

在demo-consumer-dao中创建相应的controller文件,需要将调用服务的pom.xml中导入Provider的service所在包,这里也需要将demo-service依赖添加到pom.xml中来,如下所示:

<dependency>
    <groupId>com.***.internet</groupId>
    <artifactId>demo-service</artifactId>
    <version>1.0.0-SNAPSHOT</version>
</dependency>
...

之后再对应controller中使用@Reference注解,用于调用远程服务方法,调用方式和其他本地服务一样。

 

5.启动项目,并测试结果

对两个应用程序provider和consumer,先启动provider应用,在接着启动consumer,在浏览器中输入本地地址,端口和相应的动作即可调用provider中的服务

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值