卡夫卡检查队列大小

2024-04-25 00:23:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试着定期检查卡夫卡中某个主题的队列大小。尽管如此,我甚至一次也不知道如何检查这个指标。我对卡夫卡很陌生,所以我不知道该怎么办。我认为这需要创建一个生产者或消费者来与队列交互,但我遇到了一个障碍。


Tags: 主题队列消费者指标生产者障碍定期检查陌生
2条回答

我认为目前不可能。您应该将Kafka主题视为一个无限的数据流,因此您只有一个选项,那就是在消费者中计算已消费的消息。

您可以使用kafka偏移量监视工具,它将显示每个主题分区的日志大小(您必须总结):http://ingest.tips/2014/10/12/kafka-high-level-consumer-frequently-missing-pieces/

  • 如果您想知道按主题和分区:编程方式还有多少msg需要使用,那么如果您使用的是高级消费客户端,则必须查询Zookeeper。与当前偏移位置相关的数据存储在路径/kafka/consumers下。看看Kafka Offset Monitor工具。它将让您了解ZK中存储的数据类型。这种行为将在下一个0.9.0版本中发生变化,因为ZK中的写密集型不是一个最佳用例。
  • 如果你想知道在这个主题中总共有多少个msg:你必须自己和消费者一起计算。或者将消息镜像到另一个专门用于分析目的的Kafka集群(stats、count、anything)。

Kafka中的队列大小概念是不相关的,因为它不是队列而是日志。你可以消费,倒带,跳跃,因为你想任何抵消。

相关问题 更多 >