【发布时间】:2016-08-25 23:49:21
【问题描述】:
我们正在以大约 9000 条记录/秒的速度将消息写入我们的 kafka 集群,有时我们会看到生产者的性能大幅下降,然后再也无法恢复。发生这种情况时,我们会看到以下错误“无法在超时内分配缓冲区”。以下是当进程运行良好和达到不良状态时所采用的 JMX 生产者指标。当进程降级时,“等待线程”指标非常高,任何输入都会受到赞赏。
生产者参数是
batch.size=1000000
linger.ms=30000
acks=-1
metadata.fetch.timeout.ms=1000
compression.type=none
max.request.size=10000000
虽然缓冲区完全可用,但错误是“org.apache.kafka.common.errors.TimeoutException:无法在配置的最大阻塞时间内分配内存”
【问题讨论】:
-
我对这个话题没有经验,但从我没有经验的角度来看,这个问题似乎更适合Server Fault。也许你应该阅读他们的on topic page,看看你是否认为你的问题会在那里得到更多关注。同样,我对您的主题没有经验,但您的问题对我来说很突出,因为它可能是服务器故障的一个好问题。
标签: performance apache-kafka producer