Dubbo?
Dubbo是资源调度和治理中心的管理工具
服务端:发布服务—注册服务
客户端:连接注册—返回结果—调用服务
官方推荐使用Zookeeper作为Dubbo的注册中心
Zookeeper:
1.可以作为集群管理工具使用。
2.可以集中管理配置文件。
安装zoopeeker:
进入Apache官网,找到zookeeper项目下载
http://www.apache.org/index.html#projects-list
导航:project——点击
找到:Getting Started—Download
利用工具吧zookeeper上传到linux系统中
解压:
创建一个目录:
进入conf文件夹中,拷贝zoo_sample.cfg—>zoo.cfg
编辑刚刚复制好的cfg文件
vim zoo.cfg
修改:把数据文件放到之前创建好的data目录中去
进入bin目录中启动zookeeper
启动:./zkServer.sh start
查看状态:./zkServer.sh status
关闭:./zkServer.sh stop
如果遇到启动了 但是查看状态的时候说没启动的时候,吧data里面的pid文件删除 重启ok
自选:1.关闭防火墙(自己的虚拟机,开毛线的防火墙呀)
2.配置防火墙,开启端口 2181
防火墙开放端口
vim /etc/sysconfig/iptables
二选一
到此,注册中心配置文成
发布服务:
工程中需要添加dubbo依赖的jar包,zookeeper以及zookeeper的客户端zkclient
com.alibaba dubbo org.springframework spring org.jboss.netty netty org.apache.zookeeper zookeeper com.github.sgroschupf zkclientspring配置文件:
加上dubbo的前缀以及约束
xmlns:dubbo=“http://code.alibabatech.com/schema/dubbo”
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd
<dubbo:application name=“服务的工程名(别重复)” />
<dubbo:registry protocol=“zookeeper” address=“192.168.233.128:2181” />
<dubbo:protocol name=“dubbo” port=“20880” />
<dubbo:service interface=“接口的全限定名[com.xyh.service.TestService]” ref=“testServiceImpl[实现类对象]” timeout=“600000” />
到此,服务已经可以发布,接下来是引用服务
同样的需要引入相关的jar包
SpringNVC.XML:
xmlns:dubbo=“http://code.alibabatech.com/schema/dubbo”
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd
pom.xml:
com.alibaba
dubbo
org.springframework
spring
org.jboss.netty
netty
org.apache.zookeeper
zookeeper
com.github.sgroschupf
zkclient
引用服务-----reference
<dubbo:application name=“工程名”/>
<dubbo:registry protocol=“zookeeper” address=“192.168.233.128:2181”/>
<dubbo:reference interface=“com.xyh.service.TestService” id=“testService”/>
Controller中就可以直接注入使用
@Autowired
private TestService testService;
到此,已经可以使用,现在需要启动工程来测试就ok~~
xmlns:dubbo=“http://code.alibabatech.com/schema/dubbo”
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd