最近正在学习Dubbo,参照官方文档在本地搭建了一个demo,方便学习,下面是学习过程记录,希望对其他学习的朋友有所帮助。
注:对于Dubbo、Zookeeper等概念大家可自行百度,本文不做描述。
一、下载并安装Zookeeper:
下载地址: http://www.apache.org/dist/zookeeper/
我这里下载的是3.4.6: http://www.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
下载后解压缩到本地,如下图:
然后,进入【conf】文件夹,将文件【zoo_sample.cfg】改为【zoo.cfg】,因为Zookeeper 在启动时会找zoo.cfg这个文件作为默认配置文件。
最后,进入【bin】文件夹,双击【zkServer.cmd】文件,启动Zookeeper。
启动后,如下图所示:
注:启动后不要关闭该窗口,然后继续第二步
二、配置dubbo-admin的管理页面
首先,下载【dubbo-admin-2.5.3.war】包,然后直接扔到tomcat的webapps目录中,如下图:
注:经测试,最好将Tomcat的【\webapps\ROOT】目录中的内容全部删除,然后将war包中的内容解压到其中,这样管理界面就成了Tomcat的默认应用,并且管理页面中的一些操作也不会发生404错误了。
然后,启动tomcat,访问地址: http://localhost:8080/dubbo-admin-2.5.3/ 用户名和密码都是:root
登陆后,点击【服务治理】-->【提供者】/【消费者】,可以从这里查看【提供者】和【消费者】信息:
注:【dubbo-admin-2.5.3/WEB-INF/dubbo.properties】文件用于指定zookpeeper地址信息,如下:
三、创建三个本地工程,分别对应【接口】、【提供者】和【消费者】三种角色,如下:
说明:
1、【dubbo-interface】工程用于定义API接口;
2、【dubbo-provider】工程用于定义API接口实现,并在
【applicationContext.xml】
配置文件中向注册中心(这里是Zookeeper)中注册自己为提供者,如下:
3、
【dubbo-customer】工程就是消费者,相当于我们平时调用api的客户端,他也要在
在
【applicationContext.xml】
配置文件中向注册中心(这里是Zookeeper)中注册自己为消费者,配置内容和【dubbo-provider】差不多,但更简单,如下:
四、运行
首先运行【dubbo-provider】工程的主程序,如下:
运行后,可以到管理页面查看:
然后,运行
【dubbo-customer】工程的主程序,模拟消费
者进行API调用,如下:
运行结果如下:
至此,整个demo全部完成。
另外,我也搭建了一个web工程demo,大家可以从下面下载:
1、本地工程demo:http://download.csdn.net/detail/accp_fangjian/9548171
2、web工程demo:http://download.csdn.net/detail/accp_fangjian/9548205
3、Zookeeper 3.4.6:http://www.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
4、Dubbo-admin-2.5.3.war:http://download.csdn.net/detail/u013286716/7041185
PS:
如果有人遇到配置文件中Dubbo命名空间报错,可以参考这篇文章: http://www.cnphp6.com/archives/60098