kafka元数据响应是否总是包含集群中的所有代理?

kknvjkwl  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(440)

kafka元数据响应包含代理元数据和主题元数据,代理元数据是否始终包含当前集群中的所有代理?或者只包含与元数据请求中的主题相关的代理?
如果一个v0元数据请求有一个主题,那么元数据响应中的代理要远远多于主题分区领导者和isr节点等等。。。
如果有相关文件,请告诉我。

m2xkgtsf

m2xkgtsf1#

我认为Kafka协议指南解释得很清楚(链接):
客户机如何找出存在哪些主题、它们有哪些分区以及当前哪些代理托管这些分区,以便将其请求定向到正确的主机?这些信息是动态的,所以不能只为每个客户机配置一些静态Map文件。相反,所有kafka代理都可以回答描述集群当前状态的元数据请求:有哪些主题、这些主题有哪些分区、哪个代理是这些分区的领导者以及这些代理的主机和端口信息。
换句话说,客户机需要以某种方式找到一个代理,该代理将告诉客户机存在的所有其他代理以及它们承载的分区。第一个代理本身可能会失败,因此客户机实现的最佳实践是获取一个包含两个或三个url的列表来引导。然后,用户可以选择使用负载平衡器,或者在客户机中静态配置两个或三个kafka主机。

相关问题