共计 883 个字符,预计需要花费 3 分钟才能阅读完成。
本人使用 Apache Kafka 的版本是 0.7.2,Kafka 默认的 zookeeper.properties 文件如下所示:
dataDir,clientPort 的意义显而易见,就不用说了,对于 maxClientCnxns 选项,如果不设置或者设置为 0,则每个 ip 连接 zookeeper 时的连接数没有限制。需要注意的是,设置 maxClientCnxns 的值时需要把 kafka server 的连接数考虑进去,因为启动 kafka server 时,kafka server 也会连接 zookeeper 的。
例如,我把机器 a 的 zookeeper.properties 按下图所示来设置,其中 maxClientCnxns=1
首先启动 zookeeper,接着还是在机器 a 启动 kafka server,server.properties 的 enable.zookeeper=true, 如下图所示,kafka server 也启动成功了
接下来在机器 a 启动 Producer,如下面两幅图所示,重连多次都失败了
而 zookeeper 在标准输出提示我们超过配置文件里所设置的连接数了
因为我们设置 maxClientCnxns=1,kafka server 在机器 a 启动成功后,机器 a 连接 zookeeper 的连接数就是 1 了,如果接着在机器 a 启动 producer,连接数就变成 2 了,超过 maxClientCnxns 的值,所以 producer 连接不上 zookeeper.
分布式发布订阅消息系统 Kafka 架构设计 http://www.linuxidc.com/Linux/2013-11/92751.htm
Apache Kafka 代码实例 http://www.linuxidc.com/Linux/2013-11/92754.htm
Apache Kafka 教程笔记 http://www.linuxidc.com/Linux/2014-01/94682.htm
Kafka 使用入门教程 http://www.linuxidc.com/Linux/2014-07/104470.htm
Kafka 的详细介绍 :请点这里
Kafka 的下载地址 :请点这里