dubbo和zookeeper的应用
dubbo的三中连接方式
Dubbo是Alibaba开源的分布式服务框架,采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色
具体实现参考
http://git.oschina.net/AngeLeyes/mall
实现了dubbo的广播连接方式
这种方式是dubbo官方入门程序所使用的连接方式,但是这种方式有很多问题。
在企业开发中,不使用广播的方式
dubbo直连方式
Dubbo直连,首先要取消广播,然后客户端直接到指定需要的服务的url获取服务即可。
这种方式在企业中一般在开发中环境中使用,但是生产环境很少使用,
因为服务是直接调用,没有使用注册中心,很难对服务进行管理。
zookeeper 注册中心
Zookeeper是Apacahe Hadoop的子项目,是一个树型的目录服务,支持变更推送,适合作为Dubbo服务的注册中心,工业强度较高,可用于生产环境,并推荐使用,所以这里重点说第三种
zookeeper Linux下的安装步骤
安装包下载地址http://apache.fayea.com/zookeeper/
上传zookeeper安装包,到一个文件夹
进入上传的文件夹
解压
tar -xf *.gz
删除安装包
rm -rf *.gz
更改文件名字
mv zookeeper-3.4.9 zookeeper
进入zookeeper目录
bin目录都是可执行文件
conf是配置文件
cd zookeeper
创建data和logs两个文件个
一个用于放数据,一个用于放日志
mkdir data
mkdir logs
进入conf目录,更改zoo_sample.cfg文件名字为zoo.cfg
cd conf
mv zoo_sample.cfg zoo.cfg
查看当前目录
一会配置zoo.cfg需要用
pwd
编辑zoo.cfg
添加刚才创建的data和logs文件夹到zoo.cfg中,并保存
图
到zookeeper下的bin目录中,启动zkServer.sh
./zkServer.sh start
查看是否启动成功
ps -ef|grep zookeeper
出现类似表示启动成功
root 2804 1 1 02:57 pts/1 00:00:00 java -Dzookeeper.log.dir=. -Dzookeeper.root.logger=INFO,CONSOLE -cp /usr/local/app/zookeeper/bin/../build/classes:/usr/local/app/zookeeper/bin/../build/lib/*.jar:/usr/local/app/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/usr/local/app/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/usr/local/app/zookeeper/bin/../lib/netty-3.10.5.Final.jar:/usr/local/app/zookeeper/bin/../lib/log4j-1.2.16.jar:/usr/local/app/zookeeper/bin/../lib/jline-0.9.94.jar:/usr/local/app/zookeeper/bin/../zookeeper-3.4.9.jar:/usr/local/app/zookeeper/bin/../src/java/lib/*.jar:/usr/local/app/zookeeper/bin/../conf: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=false org.apache.zookeeper.server.quorum.QuorumPeerMain /usr/local/app/zookeeper/bin/../conf/zoo.cfg
root 2821 2503 0 02:58 pts/1 00:00:00 grep zookeeper
开启防火墙,让别的电脑可以连接
/sbin/iptables -I INPUT -p tcp --dport 2181 -j ACCEPT
/etc/rc.d/init.d/iptables save
(完成.............)
dubbo Monitor监控中心
使用了zookeeper注册中心后,我们就可以很方便的使用Monitor监控中心了。监控中心其实就是一个web应用,我们直接使用Tomcat进行部署即可
war包下载地址https://github.com/alibaba/dubbo
第一步还是上传war包
到/usr/local/app/web/dubbo-monitor/root里面并解压
unzip dubbo-admin-2.5.4.war
第二步
找到tomca的配置文件service.xml里面的host节点中appBase=”webapps”改成 /usr/local/server/web/dubbo-monitor
第三部
重启tomcat