mailgun/kafka-pixy

Add support for server-side streaming RPC

asitm9 opened this issue · 3 comments

Add support for server-side streaming RPC

Could you please clarify what you mean?

From https://grpc.io/docs/tutorials/basic/go/

A server-side streaming RPC where the client sends a request to the server and gets a stream to read a sequence of messages back. The client reads from the returned stream until there are no more messages.

this would address the limitation noted in the README:

Locality: Kafka-Pixy is intended to run on the same host as the applications using it. Remember that it only provides a message based API - no batching, therefore using it over network is suboptimal.

Without it kafka-pixy doesn't fit our use-case, sadly.

This is not a limitation, but a corner stone of the design. The whole idea of Kafka-Pixy is to provide application with easy to understand and implement single-message-per-request API. For that to be efficient you need to avoid unnecessary network round-trips hence you need to run kafka-pixy locally (e.g. as a sidecar of your container). With Kafka-Pixy you do not streaming. It batches requests/responses internally to effectively communicate with Kafka brokers. If that is not good enough for you then just use a standard Kafka client library.

That said I am closing this issue as won't fix.