Dubbo框架应用之(三)--Zookeeper注册中心、管理控制台的安装及讲解
2015-06-26 21:05
633 查看
我是在linux下使用dubbo-2.3.3以上版本的zookeeper注册中心客户端。Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该注册中心。Dubbo未对Zookeeper服务器端做任何侵入修改,只需安装原生的Zookeeper服务器即可,所有注册中心逻辑适配都在调用Zookeeper客户端时完成。
Zooleeper安装
下载解压wget http://www.apache.org/dist//zookeeper/zookeeper-3.3.3/zookeeper-3.3.3.tar.gz tar zxvf zookeeper-3.3.3.tar.gz cd zookeeper-3.3.3 cp conf/zoo_sample.cfg conf/zoo.cfg配置:
vi conf/zoo.cfgzoo.cfg的内容如下:(其中data目录需改成你真实输出目录)
# The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial # synchronization phase can take #initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement #syncLimit=5 # the directory where the snapshot is stored. dataDir=/home/dubbo/zookeeper-3.3.3/data # the port at which the clients will connect clientPort=2181如果需要集群,zoo.cfg的内容如下:(其中data目录和server地址需改成你真实部署机器的信息)
tickTime=2000 initLimit=10 syncLimit=5 dataDir=/home/dubbo/zookeeper-3.3.3/data clientPort=2181 server.1=ip1 server.2=ip2并在data目录下放置myid文件:(上面zoo.cfg中的dataDir)
mkdir data vi myid启动
./bin/zkServer.sh start停止
./bin/zkServer.sh stop
管理控制台安装
管理控制台为内部裁剪版本,开源部分主要包含:路由规则,动态配置,服务降级,访问控制,权重调整,负载均衡,等管理功能。安装wget http://apache.etoak.com/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz tar zxvf apache-tomcat-6.0.35.tar.gz cd apache-tomcat-6.0.35 rm -rf webapps/ROOT wget http://code.alibabatech.com/mvn/releases/com/alibaba/dubbo-admin/2.4.1/dubbo-admin-2.4.1.war unzip dubbo-admin-2.4.1.war -d webapps/ROOT配置: (或将dubbo.properties放在当前用户目录下)
vi webapps/ROOT/WEB-INF/dubbo.properties dubbo.registry.address=zookeeper://127.0.0.1:2181 dubbo.admin.root.password=root dubbo.admin.guest.password=guest启动
./bin/startup.sh停止
./bin/shutdown.sh访问(注意我个人修改了默认的端口)(用户:root,密码:root)
http://127.0.0.1:8090/
注册中心抽象
Dubbo将注册中心进行抽象,使得它可以外接不同的存储媒介给注册中心提供服务,有ZooKeeper,Memcached,Redis等。Dubbo抽象后,用户可以进行扩展,我们通过分析ZooKeeper这个实现来了解注册中心的低层。 进过抽象之后,用户 只需要实现对应的Registry和RegistryFactory就可以了,ZooKeeper就是实现了ZookeeperRegistry,和ZookeeperRegistryFactory。 ZookeeperRegistryFactory的实现很简单,就是返回一个ZookeeperRegistry实例,所以主要的东西是在ZookeeperRegistry中实现的,在ZookeeperRegistry用户需要实现注册URL,注销URL,URL订阅,URL注销订阅和URL查询,在这里面设计到Zookeeper服务端的调用,都被封装到ZookeeperClient中,ZookeeperClient服务进行Server连接,断链;资源的CRUD。ZooKeeper的价值
由于引入了ZooKeeper作为存储媒介,也就把ZooKeeper的特性引进来。 首先是负载均衡,单注册中心的承载能力是有限的,在流量达到一定程度的时候就需要分流,负载均衡就是为了分流而存在的,一个ZooKeeper群配合相应的Web应用就可以很容易达到负载均衡; 资源同步,单单有负载均衡还不够,节点之间的数据和资源需要同步,ZooKeeper集群就天然具备有这样的功能; 命名服务,将树状结构用于维护全局的服务地址列表,服务提供者在启动的时候,向ZK上的指定节点/dubbo/${serviceName}/providers目录下写入自己的URL地址,这个操作就完成了服务的发布。其他特性还有Mast选举,分布式锁等。相关文章推荐
- Android学习【Android内核编译之Linux通信环境搭建】
- Uva -1515 Pool construction(最小割)
- 在HTML中插入回车换行
- minecraft通过花生壳怎样开服?
- 物联网系统的搭建(四)
- 进程、线程同步互斥学习 —— 事件
- HDOJ 5044 Tree
- hdu 2795 公告板 (单点最值)
- 物联网系统的搭建(三)
- 一些资源站点
- 利用HTML5开发Android笔记(上篇)
- 背包问题:动态规划和贪心算法
- 常规FTP服务器配置案例
- 经验分享(Android开发)
- 物联网系统的搭建(二)
- Java Socket应用(五)——编程实现基于 TCP 的 Socket 通信
- Java连接MySQL数据库
- 配置匿名用户
- Difference Between Primes(素数打表,素数表与数表通用)
- 单链表——带头节点