ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。
ZooKeeper官网为:http://zookeeper.apache.org/
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容。
Dubbo官网为:http://dubbo.io/
首先需要安装JdK,从Oracle的Java网站下载,安装很简单,就不再详述。其中zookeeper的下载地址是http: //www.apache.org/dyn/closer.cgi/zookeeper/,下载后直接解压,不用安装。
在你执行启动脚本之前,还有几个基本的配置项需要配置一下,Zookeeper 的配置文件在conf目录下,这个目录下有 zoo_sample.cfg 和 log4j.propert ies,你需要做的就是将zoo_sample.cfg 改名为 zoo.cfg,因为 Zookeeper 在启动时会找这个文件作为默认配置文件。下面详细介绍一下,这个配置文件中各个配置项的意义,如下图所示。
参数说明:
tickTime:zookeeper中使用的基本时间单位, 毫秒值这个时间是作为Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 t ickTime 时间就会发送一个心跳。
dataDir:数据目录. 可以是任意目录,默认情况下,Zookeeper 将写数据
的日志文件也保存在这个目录里。
clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
至此, zookeeper的单机模式已经配置好了. 启动server只需运行bin目录下的zkServer.cmd即可,启动如下:
上面的黑色框框不关,就表示注册中心一直开关的,一定要记得注册中心要在程序运行之前。在命令窗口输入JPS,出现如下,也说明启动成功:
因为zookeeper只是一个黑框,我们无法看到是否存在了什么提供者或消费者,这时就要借助Dubbo-Admin管理平台来实时的查看,也可以通过这个平台来管理提者和消费者。由于我使用的是jdk1.8的版本,在网上找了很多dubbo-admin.war基本都是基于jdb1.7的,因为我就打包了一个支持jdk1.8版本的,可以在下面的地址下载即可:http://download.csdn.net/detail/chinahuyong/9806244
dubbo的所有源码可在https://github.com/alibaba/dubbo上下载。
下载好dubbo-admin.war后,我们就可以按常用的web部署方式进行部署即可,把war包放到tomcat的webapps目录下,启动tomcat,后再部署下相应的参数。配置修改tomcat的端口8088,修改方法如下,打到conf下的文件 server.xml,因为zookeeper会用到8080的端口,所以为了不冲突,把Tomcat的端口改一下,记得一定要改!!!
这儿有个要注意的地方,现在我们还是打包的war文件,我们还需要dubbo-admin包的相应配置,所以我们要先启动tomcat,让其自动解压dubbo-admin包后再关闭tomcat,再删除dubbo-admin.war包后修改dubbo-admin下的\WEB-INF下的dubbo.properties文件,如下图:
这里的dubbo.regist ry.address后面对应的IP地址是我们的zookeeper对应的IP与端口地址,一定要一直。一般情况下都是不需要改的,因为初始都是本地的IP地址。
dubbo.admin. root .password=root与dubbo.admin.guest .password=guest 是两个用户分别为root与guest,密码默认与用户名一样,这儿的密码可以修改。
这下全部都配置好了,首先,一定要先启动zookeeper启动后再去启动tomcat!一定要先启动zookeeper启动后再去启动tomcat!一定要先启动zookeeper启动后再去启动tomcat!
启动zookeeper
启动tomcat
访问http: //ip地址:端口号/dubbo-admin-2.5.4 / 一定要注意名一定要和你webapp下的工程名一样,如果一切正常,则会弹出登录界面,如下图所示。
我们输入默认的用户名与密码root,即可登录到主界面如下图:
我们单击系统管理->系统状态,可以查看相应的状态,如下:
至此,整个部署完成,就可以开始我们的应用了。
参考文章:
ZooKeeper官网为:http://zookeeper.apache.org/
Dubbo官网为:http://dubbo.io/
Zookeeper在线API速查:http://zookeeper.apache.org/doc/r3.4.6/api/index.html