I want to use Kafka as a message broker on the server side of a distributed application. We have clients that can be located around the world, and that send frequent messages to the server. Right now those messages are just JSON over ZMQ. I am considering changing the connection between client and server to Kafka (since I'm going to use Kafka in the server side anyway) but have the following confusion:

  • Is Kafka even meant to be used this way (distributed clients connecting to the server with it)? I don't see that in the docs.

  • If I don't use Kafka, I'll have a single choke point at my server/DC entry. What's the efficient alternative to get information from the software gateway (which is now ZMQ) into kafka, without having that software gateway be a bottleneck?

1 Answer 1


Kafka doesn't care how you use it; it does nothing except transporting your arbitrary messages for you. Yes, you can use it that way, and actually I do not see anything specific enough about it to make it necessary to be mentioned in the docs.

Obviously you need to take a little care regarding security (SSL or SASL...) but aside from that, there should be no particular problem.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.