-
ZooKeeper-11-动态配置
概述
在3.5.0发行版之前,Zookeeper的成员身份和所有其他配置参数是静态的-在引导过程中加载,并且在运行时不可变。
操作员求助于“滚动重启”,这是一种手动配置且容易出错的更改配置的方法,该配置导致数据丢失和生产中的不一致。
从3.5.0版开始,不再需要“滚动重启”!
ZooKeeper完全支持自动配置更改:可以动态更改Zookeeper服务器的集合,它们的角色(参与者/观察...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-10-监听者指导
观察者:在不影响写入性能的情况下扩展ZooKeeper
尽管ZooKeeper通过使客户端直接连接到该集合的投票成员而表现良好,但是此体系结构使其很难扩展到大量客户端。
问题在于,随着我们添加更多的投票成员,写入性能会下降。
这是由于以下事实:写操作需要(通常)集合中至少一半节点的同意,因此,随着添加更多的投票者,投票的成本可能会显着增加。
我们引入了一种称为Observer的新型Z...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-09-JMX
JMX
Apache ZooKeeper对JMX具有广泛的支持,使您可以查看和管理ZooKeeper服务集合。
本文档假定您具有JMX的基本知识。
有关设置VM实例的本地和远程管理的详细信息,请参见《JMX管理指南》。
默认情况下,随附的zkServer.sh仅支持本地管理-查看链接的文档以启用对远程管理的支持(超出本文档的范围)。
在启用JMX的情况下启动ZooKeeper
o...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-08-Quota's Guide
配额
ZooKeeper具有名称空间和字节配额。
您可以使用ZooKeeperMain类设置配额。
如果用户超过分配给他们的配额,ZooKeeper会打印WARN消息。
消息将打印在ZooKeeper的日志中。
注意:名称空间配额的含义是计数配额,该数量配额限制了路径(包括其自身)下的子代数。
$ bin/zkCli.sh -server host:port**
上面的命令为...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-07-管理员指导手册
部署方式
本节包含有关部署Zookeeper的信息,并涵盖以下主题:
系统要求
群集(多服务器)设置
单服务器和开发人员设置
前两个部分假设您对在生产环境(例如数据中心)中安装ZooKeeper感兴趣。
最后一部分介绍了在有限的基础上设置ZooKeeper的情况-用于评估,测试或开发-但不在生产环境中。
系统要求
客...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-06-一些技巧及解决方案
使用ZooKeeper创建更高级构造的指南
在本文中,您将找到使用ZooKeeper实施高阶函数的准则。所有这些都是在客户端实施的约定,不需要ZooKeeper的特殊支持。
希望社区能够在客户端库中捕获这些约定,以简化它们的使用并鼓励标准化。
关于ZooKeeper的最有趣的事情之一是,即使ZooKeeper使用异步通知,您也可以使用它来构建同步一致性原语,例如队列和锁。
正如您将看...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-05-基本使用例子
介绍
在本教程中,我们展示了使用ZooKeeper的屏障和生产者-消费者队列的简单实现。
我们将各自的类称为Barrier和Queue。
这些示例假定您有至少一台ZooKeeper服务器正在运行。
这两个原语都使用以下通用代码摘录:
static ZooKeeper zk = null;
static Integer mutex;
String root;
SyncPrimit...
2016-09-25 04:21:05 |
Apache
-
ZooKeeper-04-java 例子
一个简单的监视客户端
为了向您介绍ZooKeeper Java API,我们在这里开发了一个非常简单的监视客户端。
该ZooKeeper客户端监视znode的更改并通过启动或停止程序来响应。
要求
客户有四个要求:
它作为参数:
ZooKeeper服务的地址
znode的名称-要监视的znode的名称
将输出写入的文件名
带有参数的可执行文件。
它获取与znode关联的数...
2016-09-25 04:21:05 |
Apache