Hi Madhukar,
Some questions that can help understand whats going on: Which kafka
version is used?  Which Producer API is being used
(http://kafka.apache.org/documentation.html#producerapi)?  And what are
the configs for this producer?

Also, because I know little about tomcat, is there a semantic for a
singleton, or a server singleton?
-Erik

On 9/11/15, 8:48 AM, "Madhukar Bharti" <bhartimadhu...@gmail.com> wrote:

>Hi,
>
>
>We are having 3 brokers in a cluster. Producer request is getting failed
>for broker 2. We are frequently getting below exception:
>
>15/09/09 22:09:06 WARN async.DefaultEventHandler: Failed to send
>producer request with* correlation id 1455 to broker 2* with data for
>partitions [UserEvents,0]
>> java.net.SocketTimeoutException
>>      at 
>>sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:229)
>>      at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
>>      at 
>>java.nio.channels.Channels$ReadableByteChannelImpl.read(Channels.java:385
>>)
>>      at kafka.utils.Utils$.read(Utils.scala:375)
>>      at 
>>kafka.network.BoundedByteBufferReceive.readFrom(BoundedByteBufferReceive.
>>scala:54)
>>      at kafka.network.Receive$class.readCompletely(Transmission.scala:56)
>>      at 
>>kafka.network.BoundedByteBufferReceive.readCompletely(BoundedByteBufferRe
>>ceive.scala:29)
>>      at kafka.network.BlockingChannel.receive(BlockingChannel.scala:100)
>>
>>
>After looking into request-logs in all machines, found that there is some
>slowness in broker 2. I am listing top 20 request processing time from all
>the brokers.
>
>Broker 1
>
>  Broker 2
>
>                       Broker 3
>
>Producer&
>
>Fetcher
>
>Producer
>
>Producer + Fetcher
>
>Producer
>
>            Producer +  Fetcher
>
>Producer
>
>493
>
>494
>
>495
>
>496
>
>497
>
>498
>
>499
>
>500
>
>501
>
>502
>
>503
>
>504
>
>519
>
>520
>
>541
>
>542
>
>545
>
>551
>
>577
>
>633
>
>77
>
>91
>
>94
>
>96
>
>104
>
>111
>
>112
>
>153
>
>167
>
>184
>
>248
>
>249
>
>254
>
>284
>
>395
>
>443
>
>470
>
>551
>
>577
>
>633
>
>1033
>
>1034
>
>1035
>
>1036
>
>1037
>
>1038
>
>1039
>
>1040
>
>1042
>
>1043
>
>1044
>
>1049
>
>1051
>
>1057
>
>1064
>
>1087
>
>1145
>
>1146
>
>1466
>
>1467
>
>85
>
>86
>
>114
>
>121
>
>123
>
>136
>
>153
>
>201
>
>225
>
>226
>
>240
>
>299
>
>405
>
>406
>
>448
>
>449
>
>455
>
>464
>
>505
>
>658
>
>489
>
>490
>
>491
>
>492
>
>493
>
>494
>
>495
>
>496
>
>497
>
>498
>
>499
>
>500
>
>501
>
>502
>
>503
>
>506
>
>510
>
>514
>
>515
>
>516
>
>19
>
>20
>
>21
>
>22
>
>23
>
>24
>
>27
>
>28
>
>31
>
>32
>
>60
>
>89
>
>98
>
>104
>
>110
>
>114
>
>259
>
>288
>
>337
>
>385
>
>
>What can be the reason that fetcher thread taking more time to process?
>
>What we need to do to get better performance? Any properties we need to
>tweak?
>
>Any suggestion are welcome.
>
>
>Note: We are pushing data to Kafka in user thread(tomcat) and set producer
>request timeout to 2sec. We don't want to increase timeout more than 2
>sec., as if it too many threads will get hangup then application will be
>hanged.
>
>
>Thanks and Regards,
>Madhukar

Reply via email to