问题标签 [kafka-consumer-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Kafka 主题与分区主题
我想知道简单主题和分区主题有什么区别。根据我的理解,为了平衡负载,主题已经分区,每条消息都会有偏移量,消费者会确认以确保之前的消息已经被消费。万一没有分区和消费者不匹配 kafka 完成的重新平衡是否有效管理。
如果创建多个主题而不是分区是否会影响运行效率。
apache-kafka - 是否可以使用 Kafka Simple Consumer 从多个分区中读取数据?
是否可以使用 Kafka Simple Consumer 从多个分区中读取数据?简单消费者在以下情况下使用分区:
https://cwiki.apache.org/confluence/display/KAFKA/0.8.0+SimpleConsumer+Example
apache-kafka - 是否可以让 Kafka Consumer Group 中的所有客户端读取相同的数据?
我需要从包含 3 个分区的 kafka 主题中读取最新消息。我需要从 5 个不同的客户端读取相同的数据,首先我尝试使用 Simple Consumer,但它不适用于多个分区。目的是让 Group 消费者处理分区,并为所有客户端获取相同的消息。
java - 通过java创建kafka主题时出现异常
我正在尝试使用以下代码源通过 AdminCommand 创建一个 kafka 主题
但是得到以下异常
java - Kafka - 具有特定偏移量的消费者组创建?
在 Kafka 中创建主题后,您可以创建任意数量的消费者组,只需尝试使用这些组来读取主题。
我想创建一个额外的消费者组来监控真实消费者组的消息内容——一个用来偷看他们的消息的。因此,GUI 将允许您在任何消费者组上单击“peek”,“peeker”组将其偏移量更新为被监视组的偏移量,然后它会向您显示来自该偏移量的消息。
不过我很困惑,因为您不能在第一次明确创建消费者组;您似乎必须阅读一条消息才能获取在 zookeeper 中创建的偏移节点。
我的问题
有没有办法显式创建一个指向特定偏移量的消费者组,或者是否可以为尚未使用的消费者组手动创建 zookeeper 节点,以便将其初始化为正确的偏移值?还是这种自动创建会扰乱消费者组分配过程?
apache-kafka - WAN 上的 Kafka 生产者/消费者?
我在数据中心有一个 Kafka 集群。一群可能通过 WAN(甚至互联网)进行通信的客户端将向/从集群发送/接收实时消息。
我从Kafka 的文档中读到:
...尽管高延迟链接需要 TCP 调整,但可以通过 WAN 读取或写入远程 Kafka 集群。
通常不建议运行跨多个数据中心的单个 Kafka 集群,因为这会导致 Kafka 写入和 Zookeeper 写入的复制延迟非常高,并且如果网络分区,Kafka 和 Zookeeper 都将不可用。
- 通过 WAN 进行生产不需要 ZK 并且没问题,只需注意调整 TCP 以实现高延迟连接。伟大的!查看。
- 高级消费者 API 需要 ZK 连接。
那么客户端通过 WAN 读取/写入 Kafka 是否受到上述粗体集群的相同限制?
java - Kafka 消费者错误 - 提供 xxxx 节点名或服务名,或未知
使用以下命令运行控制台使用者时
$ ~/project/libs/kafka_2.9.2-0.8.1.1/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic customerevents --autocommit.interval.ms 100 --group customereventsgroup
我收到以下错误
现在,此命令在连接到工作网络时工作正常,但在从我的家庭网络运行时却不行。
检查系统的主机名我确实得到了正确的响应
$主机名
HQSML-142453
$
看了一点,我注意到Kafka服务器配置有以下内容
# 代理将向生产者和消费者宣传的主机名。如果未设置,它将使用
“host.name”的 # 值(如果已配置)。否则,它将使用从
#java.net.InetAddress.getCanonicalHostName() 返回的值。
Advertising.host.name=HQSML-142453
我更新以包含我的主机名,但这似乎没有帮助。关于这里可能是什么问题的任何想法。
我知道这是一些相关的网络接口,但不能缩小范围。
配置:优胜美地,osx jdk 7,kafka v0.8.1.1
apache-kafka - Storm Kafka Spout 未在本地集群中提交偏移量,spout 重复检索相同的消息
我已经设置了从 kafka 服务器获取输入数据的风暴拓扑。我使用 kafka-storm 包来获取数据。我已经在本地集群中成功地实现了 kafka 服务器和风暴拓扑之间的连接,但是我在从 kafka 服务器检索数据时遇到了一些问题。
kafka Spout 在运行时重复检索相同的消息,即使我设置spoutconfig.forceFromStart=false
和spoutconfig.startOffsetTime =-1
注意:当我停止并重新启动集群时,数据会根据最新的偏移量正确发送。
apache-kafka - Kafka:通过 Zookeeper 动态发现代理
我是 Kafka 的新手,我正在探索通过 ZooKeeper 动态发现给定主题的代理的选项,而不是使用静态代理列表。这就是我想要做的,1. 对于给定的主题,获取分区列表。2. 对于每个分区,获取可以读取消息的领导代理列表。3. 使用简单消费者从每个代理读取主题的可用消息。
首先这是正确的方法吗?只从分区的领导者那里读取是否有意义?如果是这样,是否有任何代码示例?