reClojure Logo

Ketu - The Kafka Client We Deserve

Yonatan Elhanan

The Talk

Using Apache Kafka can be daunting. It requires understanding consumer and producer semantics, managing threads, handling specific exceptions and navigating long yet lacking documentation and complex configuration options. As clojure developers we prefer APIs to be idiomatic, data-driven and friendly yet performant. In this talk I’ll present Ketu, a kafka client built for the CSP/channels style of programming, including design decisions that got us data-driven setup, familiar types, core.async integration, opinionated defaults and extension/substitution points while keeping a keen eye on performance. It’s the Kafka client we truly deserve.


Yonatan Elhanan is a Platform engineer and Clojure community leader at Appsflyer, where he designs and implements sane event processing pipelines at scale. He is responsible for Apache Kafka clients and production clusters, constantly looking under the hood and might be considered a clojure geek with root access.