Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 卡夫卡0.72,最低经纪人数量_Apache Kafka - Fatal编程技术网

Apache kafka 卡夫卡0.72,最低经纪人数量

Apache kafka 卡夫卡0.72,最低经纪人数量,apache-kafka,Apache Kafka,我试图创建一个制作人,向卡夫卡经纪人(而不是动物园管理员)发送消息 我知道更好的做法是使用zk,但目前我想直接向代理发送消息 为此,我将属性“broker.list”设置为。问题是,为了让它工作,它至少需要3个代理(否则我会得到一个例外) 在卡夫卡的小说中,我可以看到: if(brokerInfo.size < 3) throw new InvalidConfigException("broker.list has invalid value") if(brokerInfo.size(b

我试图创建一个制作人,向卡夫卡经纪人(而不是动物园管理员)发送消息

我知道更好的做法是使用zk,但目前我想直接向代理发送消息

为此,我将属性“broker.list”设置为。问题是,为了让它工作,它至少需要3个代理(否则我会得到一个例外)

在卡夫卡的小说中,我可以看到:

if(brokerInfo.size < 3) throw new InvalidConfigException("broker.list has invalid value")
if(brokerInfo.size<3)抛出新的InvalidConfigException(“broker.list具有无效值”)
这很奇怪,因为在我的数据中心,我只有2个kafka节点(和3个zk),在这种情况下我能做什么?
有办法解决这个问题吗

经纪人信息
brokerInfo
是通过拆分个人经纪人信息和经纪人数量获得的。。如果您更仔细地检查源代码,您将看到如下内容

//检查每个代理信息是否有效=>(brokerrid:brokerHost:brokerPort)

然后他们将这些信息拆分如下

   brokerInfoList.foreach { bInfo =>
       val brokerInfo = bInfo.split(":")
       if(brokerInfo.size < 3) throw new InvalidConfigException("broker.list has invalid value")
   }

所以我想你应该对这没问题,只要试着通过一个经纪人就行了。写的时候让我们知道它的进展情况

props.put("broker.list", "0:" + <host:port>);
props.put(“broker.list”,“0:+);
它可以工作(我在原始字符串中添加了“0:”。 我在《公约》第9节中找到了它


我不确定我是否得到了它,可能这个零是分区号(?)可能是其他的东西(如果有人能在这里透露一些信息可能会很好)。

你是对的,这就是为什么我在代理标识符中添加了“0:”部分时它起了作用。可能这是包含代理信息的映射的键(尽管我不确定)。。如果对多个代理使用相同的
id
,会发生什么情况。。e、 g
props.put(“broker.list”,“0:broker1:9092,0:broker2:9092”)。。我希望能从那里得到一些线索
props.put("broker.list", "0:" + <host:port>);