[ 
https://issues.apache.org/jira/browse/KAFKA-19296?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mickael Maison updated KAFKA-19296:
-----------------------------------
    Fix Version/s: 4.2.0
                       (was: 4.1.0)

> 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: 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)

Reply via email to