[
https://issues.apache.org/jira/browse/KAFKA-4843?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guozhang Wang resolved KAFKA-4843.
----------------------------------
Resolution: Fixed
Issue resolved by pull request 2643
[https://github.com/apache/kafka/pull/2643]
> Stream round-robin scheduler is inneficient
> -------------------------------------------
>
> Key: KAFKA-4843
> URL: https://issues.apache.org/jira/browse/KAFKA-4843
> Project: Kafka
> Issue Type: Improvement
> Components: streams
> Affects Versions: 0.10.2.0
> Reporter: Eno Thereska
> Assignee: Eno Thereska
> Fix For: 0.11.0.0
>
>
> Currently StreamThread.runloop() uses a simple round-robin scheduler, where a
> single request is taken from each task for processing, followed by poll,
> followed by the same process over again. For example, for an app that has
> just 2 tasks each with 3 records ready to be processed we'd have the
> following sequence
> poll() -> process 1 request for task T1 -> process 1 request for task T2 ->
> poll()
> -> process 1 request for task T1 -> process 1 request for task T2 -> poll()
> -> process 1 request for task T1 -> process 1 request for task T2 -> poll()
> This is quite inefficient. Instead, a better round robin scheduler would do:
> poll() -> process all 3 requests for task T1 -> process all 3 requests for
> task T2 -> poll()
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)