You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Kirk True (Jira)" <ji...@apache.org> on 2025/09/17 15:45:00 UTC
[jira] [Resolved] (KAFKA-19296) Revise AsyncKafkaConsumer event wakeup approach
[ https://issues.apache.org/jira/browse/KAFKA-19296?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kirk True resolved KAFKA-19296.
-------------------------------
Resolution: Won't Do
> Revise AsyncKafkaConsumer event wakeup approach
> -----------------------------------------------
>
> Key: KAFKA-19296
> URL: https://issues.apache.org/jira/browse/KAFKA-19296
> Project: Kafka
> Issue Type: Improvement
> Components: clients, consumer
> Reporter: Kirk True
> Assignee: Kirk True
> Priority: Major
> Labels: async-kafka-consumer-performance, consumer-threading-refactor, performance
> Fix For: 4.2.0
>
>
> The {{AsyncKafkaConsumer}} uses an event queue-based mechanism to communicate between the application thread and the background network thread. When a new event is enqueued, the application thread will call {{NetworkClient.wakeup()}} in order to make sure the background thread doesn't block in {{NetworkClient.poll()}} too long. However, in certain settings, the number of wake ups for the {{AsyncKafkaConsumer}} can be a one, possibly two orders of magnitude more than {{{}ClassicKafkaConsumer{}}}. Because {{NetworkClient.wakeup()}} needs to call down through the OS' network layer, the current event notification approach used by {{AsyncKafkaConsumer}} adds significant, unnecessary overhead.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)