On further investigation we found that similar issue is already filed under
https://issues.apache.org/jira/browse/KAFKA-1351

To re validate we explicitly commented per message logs
in BrokerPartitionInfo.scala and DefaultEventHandler.scala.

The disabling of logs resulted in 5 times increase in producer through put.

Best regards
Prashant


On Wed, Oct 15, 2014 at 12:18 AM, Prashant Prakash <prash.i...@gmail.com>
wrote:

> Dear Kafka Users,
>
> We are using kafka-2.8.0-0.8.8 in our application development. The
> application is running with two brokers each having one partition.
>
> We are using high level api to send message over async producer. While
> testing through put of our application we have observed that  more than 60
> % of the time was spent in getPartitionListForTopic method of
> DefaultEventHandler class.
>
> We have set topic.metadata.refresh.interval.ms=-1. The method
>  (getPartitionListForTopic ) is invoked per message and primarily returns
> the broker-partition info for the topic from topicPartitionInfo map apart
> from logging.
>
> To narrow down time intensive process we  had explicitly set log level as
> * log4j.logger.kafka.producer.async.DefaultEventHandler=OFF
> * log4j.logger.kafka.producer.BrokerPartitionInfo=OFF
>
> The above change resulted in 3 times increase in producer through put. We
> have verified the above behavior consistently.
>
> Has similar behavior been observed earlier ?
> If not then any suggestion, areas to look upon to drill down the issue.
>
> We are thinking of setting the log level for the mentioned class as ERROR.
>
> Please share views, solutions.
>
> Thank you very much.
>
> Best regards
> Prashant
>
>
>
>
>
>
>

Reply via email to