[
https://issues.apache.org/jira/browse/KAFKA-2486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14720110#comment-14720110
]
Guozhang Wang commented on KAFKA-2486:
--------------------------------------
OK, there are a few mixed expressions in my previous comment. First of all
"retry.backoff" should be used for failed requests, but not requests returning
no data, so I did not catch that when reviewing and this needs to be fixed for
sure. No question about it.
Now return to performance profiling, by default the fetch requests are
long-polls:
FETCH_MIN_BYTES_CONFIG = 1024
FETCH_MAX_WAIT_MS_CONFIG = 500
but I remember in consumer performance they were once overriden to 1 and 0 (I
saw those overriden values were removed now, but I am pretty confident they
were over-written some time ago), in which case we may want to back-off a bit
instead of DDoSing. The question is really for performance profiling where data
keeps filling in from a continuously sending producer and there is no
processing time after consumption, what should be the optimal configs. I think
long polls should still be preferable for throughput, but maybe will give
sub-optimal latencies.
> New consumer performance
> ------------------------
>
> Key: KAFKA-2486
> URL: https://issues.apache.org/jira/browse/KAFKA-2486
> Project: Kafka
> Issue Type: Sub-task
> Components: consumer
> Reporter: Ewen Cheslack-Postava
> Assignee: Jason Gustafson
> Fix For: 0.8.3
>
>
> The new consumer was previously reaching getting good performance. However, a
> recent report on the mailing list indicates it's dropped significantly. After
> evaluation, even with a local broker it seems to only be reaching a 2-10MB/s,
> compared to 600+MB/s previously. Before release, we should get the
> performance back on par.
> Some details about where the regression occurred from the mailing list
> http://mail-archives.apache.org/mod_mbox/kafka-dev/201508.mbox/%3CCAAdKFaE8bPSeWZf%2BF9RuA-xZazRpBrZG6vo454QLVHBAk_VOJg%40mail.gmail.com%3E
> :
> bq. At 49026f11781181c38e9d5edb634be9d27245c961 (May 14th), we went from good
> performance -> an error due to broker apparently not accepting the partition
> assignment strategy. Since this commit seems to add heartbeats and the server
> side code for partition assignment strategies, I assume we were missing
> something on the client side and by filling in the server side, things
> stopped working.
> bq. On either 84636272422b6379d57d4c5ef68b156edc1c67f8 or
> a5b11886df8c7aad0548efd2c7c3dbc579232f03 (July 17th), I am able to run the
> perf test again, but it's slow -- ~10MB/s for me vs the 2MB/s Jay was seeing,
> but that's still far less than the 600MB/s I saw on the earlier commits.
> Ideally we would also at least have a system test in place for the new
> consumer, even if regressions weren't automatically detected. It would at
> least allow for manually checking for regressions. This should not be
> difficult since there are already old consumer performance tests.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)