Dubbo框架应用之(三)--Zookeeper注冊中心、管理控制台的安装及解说
我是在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.cfg
zoo.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/
注冊中心抽象
进过抽象之后,用户 仅仅须要实现相应的Registry和RegistryFactory就能够了,ZooKeeper就是实现了ZookeeperRegistry,和ZookeeperRegistryFactory。
ZooKeeper的价值
首先是负载均衡。单注冊中心的承载能力是有限的,在流量达到一定程度的时候就须要分流,负载均衡就是为了分流而存在的,一个ZooKeeper群配合相应的Web应用就能够非常easy达到负载均衡。
资源同步。单单有负载均衡还不够。节点之间的数据和资源须要同步,ZooKeeper集群就天然具备有这种功能。
命名服务,将树状结构用于维护全局的服务地址列表,服务提供者在启动的时候,向ZK上的指定节点/dubbo/${serviceName}/providers文件夹下写入自己的URL地址,这个操作就完毕了服务的公布。其它特性还有Mast选举。分布式锁等。
Dubbo框架应用之(三)--Zookeeper注冊中心、管理控制台的安装及解说的更多相关文章
- Dubbo原理简介、与Zookeeper整合利用
官方文档:http://dubbo.io/books/dubbo-user-book/ Dubbo的简单介绍 Dubbo是一个分布式服务框架,架构如图: 节点角色说明: Provider: 暴露服务的 ...
- Watcher 实现机制之client注冊
Zookeeper 提供的了分布式数据的公布/订阅功能,通过 Watch 机制来实现这样的分布式的通知功能. Zookeeper 同意client向server注冊一个Watch监听.当服务端的一些指 ...
- Dubbo框架中的应用(两)--服务治理
Dubbo服务治理了看法 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlzaGVoZQ==/font/5a6L5L2T/fontsize/400/fi ...
- Dubbo源代码分析(三):Dubbo之服务端(Service)
如上图所看到的的Dubbo的暴露服务的过程,不难看出它也和消费者端非常像,也须要一个像reference的对象来维护service关联的全部对象及其属性.这里的reference就是provider. ...
- struts2学习笔记(三)—— 在用户注冊程序中使用验证框架
实现目标: 1.使用验证框架对用户注冊信息进行验证 2.验证username.password.邮箱不能为空 3.验证username.password长度 ...
- Dubbo框架应用之(三)--Zookeeper注册中心、管理控制台的安装及讲解
我是在linux下使用dubbo-2.3.3以上版本的zookeeper注册中心客户端.Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该注册中心.Dubbo未对 ...
- Dubbo框架应用之(四)--Dubbo基于Zookeeper实现分布式实例
上三篇文章主要是解决了概念性的补充和学习,充分结合实战来深入理解 入门实例解析 第一:provider-提供服务和相应的接口 创建DemoService接口 package com.unj.dubbo ...
- SSH2框架实现注冊发短信验证码实例
这两天開始写程序了,让用SSH2框架,曾经没有接触过Java项目更没有接触过SSH2框架,所以用注冊開始了我Java之旅.后来发现,后台代码挺easy理解的,跟.net的差点儿相同.就是层与层之间的调 ...
- dubbo注冊zookepper奇妙IP_续
原文章地址:http://blog.csdn.net/lele2426/article/details/39530409#4483369 后来server须要连接外网.配置DNS后又開始出现奇妙的IP ...
随机推荐
- CentOS 7下的KVM网卡配置为千兆网卡
在KVM下可以生成两种型号的网卡,RTL8139和E1000,其实应该是底层生成不同芯片的网卡,而不是附带宿主机网卡是什么型号就是什么型号的,其中默认为100兆网卡,即RTL8319的螃蟹卡,另一种是 ...
- 精益软件研发的秘密 IT大咖说 - 大咖干货,不再错过
精益软件研发的秘密 IT大咖说 - 大咖干货,不再错过 http://www.itdks.com/dakashuo/new/dakalive/detail/3662
- redis 写磁盘出错 Can’t save in background: fork: Cannot allocate memory (转)
查看 Redis 日志 发现系统在频繁报错: [26641] 18 Dec 04:02:14 * 1 changes in 900 seconds. Saving… [26641] 18 Dec 04 ...
- bitnami-redmine邮件告警配置
配置 bitnami-redmine的配置文件与单纯的redmine配置文件可能并不相同,在这里我们需要打开一下配置文件: /opt/bitnami/apps/redmine/htdocs/confi ...
- 打开IPHONE的sms.db短信文件 方法
先将导出的sms.db文件改名为sms.sqlite再下载个火狐浏览器<IGNORE_JS_OP style="WIDOWS: 2; TEXT-TRANSFORM: none; BAC ...
- 通过layer-list自定义EditText背景
假设activity的背景是白色,第一层也(就是最底层)是绿色:第二次是白色,但是距离底部有一段小偏移,目的是为了做出文本框两边的小勾:第三层也是白色,但是它距离底部和左右两边都有一定距离.通过三层配 ...
- JS读取json 文件
json文件是一种轻量级的数据交互格式.一般在jquery中使用getJSON()方法读取. $.getJSON(url,[data],[callback]) url:加载的页面地址 data: 可选 ...
- 使用pm2管理node.js应用
中文文档:https://pm2.io/doc/zh/runtime/quick-start/ pm2是从nodejs衍生出来的服务器进程管理工具,可以做到开机就启动nodejs.当然了,有些运维同学 ...
- 【google chrome 一键打开 谷歌跳转的页面+JS Replace】谷歌无法打开网页的时候,提取网页中url的部分
经常在谷歌搜索,遇到网页无法打开,然后就停留在比如:http://www.google.com.hk/search?newwindow=1&safe=strict&site=& ...
- Domino(群组工作软件)
ylbtech-Miscellaneos: Domino(群组工作软件) “Domino”是一种群组工作软件.使用了Domino的服务器就叫Domino服务器Domino的功能强大,界面丰富,主要用于 ...