如何存储和处理 Offset Commit 请求以提交?

How Offset Commit requests stored and processed to commit?

在存储 Offset Commit 请求的 Kafka 中。在请求队列中?在我的例子中,我正在 3 节点集群中测试 2500 个消费者组。与使用较少的消费者群体相比,偏移提交时间花费了这么长时间。(在 grafana 中使用 JMX 指标)我检查了网络线程 - 大多数时候它的空闲和请求队列大小为 500,但甚至没有达到 100,所以我想i/o 线程正在高效地完成它的工作。

增加消费者组时,什么会影响提交偏移时间? 网络线程大多 idle.request 队列甚至还没有填满。 那么集群中增加ConsumerGroups的瓶颈是什么?

1.All请求消息(包括OffsetCommit请求)首先到达网络队列(Socket Buffer)。
2.然后通过network_thread.
进入请求队列(在kafka broker中) 3.Then IO线程处理它,它进入炼狱,然后发送到响应队列。
4.Finally 网络线程将响应发送到客户端(套接字缓冲区)。