小编use*_*864的帖子

在Apache Kafka中,为什么不能有比分区更多的消费者实例?

我正在学习卡夫卡,在这里阅读介绍部分

https://kafka.apache.org/documentation.html#introduction

特别是有关消费者的部分.在引言的倒数第二段中,它读到了

卡夫卡做得更好.通过在主题中具有并行性概念 - 分区 - ,Kafka能够在消费者流程池中提供订购保证和负载平衡.这是通过将主题中的分区分配给使用者组中的使用者来实现的,以便每个分区仅由该组中的一个使用者使用.通过这样做,我们确保使用者是该分区的唯一读者并按顺序使用数据.由于有许多分区,这仍然可以平衡许多消费者实例的负载.但请注意,除分区之外不能有更多的消费者实例.

我的困惑源于最后一句话,因为在该段落的正上方,作者描绘了两个消费者群体和一个4分区主题,消费者实例多于分区!

没有比分区更多的消费者实例也没有意义,因为那时分区将非常小,并且似乎为每个消费者实例创建新分区的开销会使Kafka陷入困境.我知道分区用于容错并减少任何一台服务器上的负载,但上述句子在分布式系统的环境中没有意义,该分布式系统应该能够一次处理数千个消费者.

distributed apache-kafka

57
推荐指数
5
解决办法
4万
查看次数

测试kafka消费者和生产者连接失败

我一直在尝试测试kafka安装并使用指南创建了一个生产者和消费者.尝试检索邮件时,出现以下错误:

 WARN Session 0x0 for server null, unexpected error, closing socket connection and 
 attempting reconnect (org.apache.zookeeper.ClientCnxn)
 java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)
    at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1146)
 [2014-03-04 18:01:20,628] INFO Terminate ZkClient event thread. (org.I0Itec.zkclient.ZkEventThread)
 [2014-03-04 18:01:21,315] INFO Opening socket connection to server kafka-test/192.xxxxxx.110:2182 (org.apache.zookeeper.ClientCnxn)
 [2014-03-04 18:01:21,418] INFO Session: 0x0 closed (org.apache.zookeeper.ZooKeeper)
 Exception in thread "main" org.I0Itec.zkclient.exception.ZkTimeoutException: Unable to connect to zookeeper server within timeout: 6000
    at org.I0Itec.zkclient.ZkClient.connect(ZkClient.java:880)
    at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:98)
    at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:84)
    at kafka.consumer.ZookeeperConsumerConnector.connectZk(ZookeeperConsumerConnector.scala:151)
    at kafka.consumer.ZookeeperConsumerConnector.<init>(ZookeeperConsumerConnector.scala:112)
    at kafka.consumer.ZookeeperConsumerConnector.<init>(ZookeeperConsumerConnector.scala:123)
    at kafka.consumer.Consumer$.create(ConsumerConnector.scala:89)
    at …
Run Code Online (Sandbox Code Playgroud)

apache-kafka apache-zookeeper

9
推荐指数
3
解决办法
3万
查看次数

是否可以在Java中使用默认值定义方法参数?

真的想在Java方法中初始化一些参数,例如

public void delete(String name, int user_id=0) { //method body }

所以user_id不一定要通过.但是我得到了这个令牌无效的Eclipse错误.我该怎么做?

java methods

2
推荐指数
1
解决办法
7012
查看次数

Kafka 错误:无法找到或加载主类 org.apache.kafka.clients.tools.ProducerPerformance

我试图按照以下文章为 Apache Kafka 运行性能测试

参考:

https://engineering.linkedin.com/kafka/benchmarking-apache-kafka-2-million-writes-second-three-cheap-machines

链接测试:https : //gist.github.com/jkreps/c7ddb4041ef62a900e6c

但是当我运行这个时:

 bin/kafka-run-class.sh org.apache.kafka.clients.tools.ProducerPerformance test7 50000000 100 -1 acks=1 bootstrap.servers=localhost:9092 buffer.memory=67108864 batch.size=8196
Run Code Online (Sandbox Code Playgroud)

它显示错误:

Error: Could not find or load main class org.apache.kafka.clients.tools.ProducerPerformance
Run Code Online (Sandbox Code Playgroud)

是关于 kafka 版本吗?或者我需要从其他地方下载课程?

我的org.apache.kafka.clients.tools.ProducerPerformance类在哪里 ?请建议..

apache-kafka clj-kafka

2
推荐指数
1
解决办法
5885
查看次数