【发布时间】:2021-08-15 00:01:30
【问题描述】:
假设我有一个 1000 个节点的 Kafka 集群。假设某个生产者向某个主题发送了一条消息,那么集群中第一个收到该消息的节点是什么? Kafka 集群内部有负载均衡器吗?假设这个节点没有消息应该推送到的lead partition,它可以将消息转发到包含这个partition的broker吗?
【问题讨论】:
标签: apache-kafka
假设我有一个 1000 个节点的 Kafka 集群。假设某个生产者向某个主题发送了一条消息,那么集群中第一个收到该消息的节点是什么? Kafka 集群内部有负载均衡器吗?假设这个节点没有消息应该推送到的lead partition,它可以将消息转发到包含这个partition的broker吗?
【问题讨论】:
标签: apache-kafka
客户端知道集群的所有broker,只能生产到它可以识别的leader topic partition,并且只托管在一个broker上。控制器定义领导How many Kafka controllers are there in a cluster and what is the purpose of a controller?
没有负载均衡器,所有代理在可以接收的请求方面都是平等的,并且不会将事件重定向到复制之外的其他人
prouder 客户端中的分区器实例将对消息的键进行哈希处理(默认情况下,如果键不为空),并以主题中的分区数为模。使用该值,它将生成到托管该分区号的特定代理
【讨论】: