Kafka client circuit breaker

2016-10-28 Thread Andrey Dyachkov
Hi Kafka developers :) We use Kafka for around half a year as a main backend system for storing events from big variety of internal microservices. In general It works quite well and we experience issues only in some rare 'corner cases' where we either run against a bug or do not understand why Kaf

Re: Kafka client circuit breaker

2016-10-31 Thread Becket Qin
Hi Andrey, I am not sure I understand the question "why doesn't Kafka client have the solution for this kind of problems?" Can you elaborate a little on what kind of problems are you referring to? And what do you mean by "circuit breaker" here? Jiangjie (Becket) Qin On Fri, Oct 28, 2016 at 12:07

Re: Kafka client circuit breaker

2016-10-31 Thread Andrey Dyachkov
Hi Becket, I asked the same question in the user mailing list and we had a small discussion there. We have default timeout for producer and consumer it is 30 secs. If Kafka is not available we will wait 30 secs on each request. Decreasing timeout won't help much because we have a lot requests but

Re: Kafka client circuit breaker

2016-10-31 Thread Nacho Solis
Hi Andrew. Is this what you're saying: - sometimes you get stuck (like a blocking call) when you call some function in the kafka client - you can go around this case (by wrapping it) such that if the kafka client call gets stuck your software doesn't get stuck - you're wondering why the kafka clie

Re: Kafka client circuit breaker

2016-10-31 Thread Andrey Dyachkov
Hi Nacho, yes, exactly. On Mon, 31 Oct 2016 at 22:10 Nacho Solis wrote: > Hi Andrew. > > Is this what you're saying: > - sometimes you get stuck (like a blocking call) when you call some > function in the kafka client > - you can go around this case (by wrapping it) such that if the kafka > cli

Re: Kafka client circuit breaker

2016-10-31 Thread Nacho Solis
At LinkedIn we've run into some of these problems. We're slowly making our way towards a solution. It's a little odd in the sense that while it's possible for some of our clients to block if the cluster is down, sometimes that is the behavior we need. For us (in production) a cluster down or unre