首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生产者:当领导地位下降时元数据刷新

生产者:当领导地位下降时元数据刷新
EN

Stack Overflow用户
提问于 2016-09-02 10:56:02
回答 1查看 1.8K关注 0票数 2

直到最近,我还认为生产者、领导人选举和元数据的过程是这样的:

  1. 生产者发布给了一位首席经纪人,这将是失败的。
  2. 生产者尝试了几次(或0,取决于配置)。
  3. 最终,生产者将“失败”发布这一信息。
  4. 这将触发生产者与代理联系,以获取一个新的元数据块,这样它就可以找到新的领导者并继续。

然而,我观察到的是,生产者在耗尽重试之后阻塞,在元数据“自动”刷新之前什么也不做。此刷新将基于在此属性中配置的时间(来自Apache的Kafka文档):

metadata.max.age.ms:--一段以毫秒为单位的时间,在此之后,我们强制刷新元数据,即使我们还没有看到任何分区领导的更改,以主动发现任何新的代理或分区。

因此,基本上,如果生产者碰巧在元数据过期的时间附近阻塞,那么生产就会迅速恢复。但是,如果生产者在最后一次自动刷新发生后几秒钟阻塞,考虑到该属性的默认设置为5分钟,则生成器几乎会一直被阻塞。

有什么东西我漏掉了还是没有正确理解?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-05-29 06:27:10

我也经历过同样的经历。我唯一理解的是,您必须小心处理metadata.max.age.ms属性。如果您的数据处理非常关键,并且您不希望由于没有发生领导选择而丢失您的消息,请尽量保持较低的metadata.max.age.ms property。但这将增加元数据更新的开销。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39290693

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档