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