Hi, all. I'm developing Kafka client in Netty and Twitter's Finagle from scratch. It enables us to handle Kafka more functional and composable way based on "Future" monad. We can also utilize many features, such as load balancing, timeouts, retries and metrics, provided by Finagle.
https://github.com/okapies/finagle-kafka I have already implemented the Kafka protocol in Netty and it can interact with _single_ broker. Compression and partitioning features are not supported at the moment but they are not difficult to implement I think. I want your feedbacks and contributions! I don't know Kafka's "real usecase" in the wild and can't decide what interface is useful. You can try it easily through Scala's REPL (sbt console). Please examine it and give me issues and pull requests on the github. Best regards, Yuta