Kafka解惑之OldProducer(4)CaseAnalysis

本文通过一个线上案例分析了Kafka 0.8.2.x版本Old Producer在一台Broker故障时,由于topic.metadata.refresh.interval.ms参数导致的每隔10分钟出现少量消息发送时延大的问题。异常堆栈显示在获取元数据时发生错误,与topic.metadata.refresh.interval.ms参数有关。解决方案包括调整该参数、避免请求故障Broker、使用VIP等。
摘要由CSDN通过智能技术生成

原 Kafka解惑之Old Producer(4)——Case Analysishttps://blog.csdn.net/u013256816/article/details/79237769版权声明:本文为博主原创文章,未经博主朱小厮允许不得转载。 https://blog.csdn.net/u013256816/article/details/79237769
欢迎支持笔者新作:《深入理解Kafka:核心设计与实践原理》和《RabbitMQ实战指南》,同时欢迎关注笔者的微信公众号:朱小厮的博客。
上接:
Kafka解惑之Old Producer(1)—— Beginning
Kafka解惑之Old Producer(2)——Sync Analysis
Kafka解惑之Old Producer(3)——Async Analysis
在前面三篇文章中详细了解了Old Producer的内容,本文主要通过一个实际应用案例来加深各位对Old Producer的理解。
问题描述:线上由多台Kafka Broker组成的集群(Producer的metadata.broker.list参数设置的是所有broker的地址+端口号的列表),版本号为0.8.2.x,当一台Kafka Broker的硬盘发生故障导致系统崩溃,由于Kafka的HA的作用线上业务无明显异常,发送方和消费方的流量也与之前持稳,但是后面监测到每隔10分钟左右就有少量的消息发送的时延很大,而且有ERROR告警报出。
2018-01-30 00:53:20 -[ERROR] - [fetching topic metadata for topics [Set(hidden-topic)] from broker [ArrayBuffer(id:0,host:xxx.xxx.xxx.xxx,port:9092)] failed] - [kafka.utils.Logging$$anonfun$swallowError$1:106]
kafka.common.KafkaException: fetching topic metadata for topics [Set(hidden-topic)] from broker [ArrayBuffer(id:0,host:xxx.xxx.xxx.xxx,port:9092)] failed
 at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:72)
 at kafka.producer.BrokerPartitionInfo.updateInfo(BrokerPartitionInfo.scala:82)
 at kafka.producer.async.DefaultEventHandler$$anonfun$handle$1.apply$mcV$sp(DefaultEventHandler.scala:67)
 at kafka.utils.Utils$.swallow(Utils.scala:172)
 at kafka.ut

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值