搭建Maven+Spring+Dubbo+Zookeeper的整合示例



Maven模块化

创建一个名为dubbo-demo的Maven工程,该工程包含三个模块

• dubbo-demo-interface   (定义对外开放接口)

• dubbo-demo-provider   (接口实现)

• dubbo-demo-consumer (接口调用)

dubbo-demo工程中的pom.xml文件如下:

一步一步来完成interface、provider以及consumer模块的内容~


模块interface

定义接口

创建一个接口(GreetingService),包含一个hello接口,如:

简单的接口就定义好了~

有了接口,就可以在Provider中完成接口的实现,并暴露接口服务为Dubbo服务给其它模块使用(如consumer)~


模块Provider

➣ 添加依赖包

• 添加interface依赖包


➣ 实现接口


其中,

System.in.read(); 的作用是控制台输入任何字符退出~ 因为本文示例provider不是web工程,这个操作只是保持provider的服务一直开着~

接下来,我们继续来完成模块Consumer的代码和配置~


模块Consumer

➣ 添加依赖包

Zookeeper安装和配置

➣ 安装

可以从zookeeper官网下载zookeeper安装包~ 本文使用的版本是3.4.6, 将下载的安装包解压缩即可

➣ 配置

进入Zookeeper安装目录下的conf目录~

复制zoo_sample.conf文件,并将复制的配置文件取名为zoo.conf~ 其内容如下:

简单使用的话,可以不做修改~


至此,interface,provider以及consumer模块已经准备好,zookeeper也已经准备好~ 接下来就可以做相关的测试了~

测试 & 结果

➣ 启动Zookeeper

进入Zookeeper安装路径下的bin目录~


从上述日志中可以看出,hello接口已经成功调用,并输出了Consumer ==> Hello, Eric


当然,我们可以切换到provider的输出日志,包含hello方法被调用执行的时间信息~


至此,一个简单的Maven + Spring + Dubbb + Zookeeper整合示例就完成了。后续,可以将provider变成一个Web工程,如springMVC实现等,其中可以和MySQL或者NoSQL(如MongoDB等)集成,进一步完成其它功能~


➣ 消费者调用


接下来,最后一个步骤就是在dubbo-demo-consumer中,调用Dubbo服务即可~


运行中的Main类,结果如下:

从上述日志中可以看出,hello接口已经成功调用,并输出了Consumer ==> Hello, Eric


当然,我们可以切换到provider的输出日志,包含hello方法被调用执行的时间信息~


至此,一个简单的Maven + Spring + Dubbb + Zookeeper整合示例就完成了。后续,可以将provider变成一个Web工程,如springMVC实现等,其中可以和MySQL或者NoSQL(如MongoDB等)集成,进一步完成其它功能~



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值