Kafine - Kafka client for Erlang

Kafine is a Kafka client for Erlang.

We’re (Happening, the technology stack behind Superbet) pleased to announce the initial public release of Kafine, our new Kafka client for Erlang.

While Kafine is all-new, and still a bit rough around the edges, it’s based on years of experience using Kafka in production with our existing internal Kafka libraries.

The secret sauce in kafine is the automatically-generated message codecs in the kafcod project, which aims to achieve better performance and compatibility than existing Kafka client libraries in the BEAM ecosystem.

We’re in the process of publishing packages to hex.pm. Until then, you can take a look at the repositories on GitHub:

Note that this release is currently considered unstable. We’re using it in production, but only for a small number of non-critical workloads. We’re working towards being production ready, and we’d appreciate feedback from the community.

15 Likes

Kafine v0.6.0

We’ve pushed the 0.6.0 release of kafine. Change notes are also at that link, but for completeness:

  • First pass implementation of process-per-partition. The consumer
    callback is invoked from an isolated process (one per partition).
    Right now, this doesn’t do much. In future, it will be used to improve
    concurrency and reliability.
  • Fix: docker/get-host-ip.sh doesn’t work on brand-new Ubuntu
    installation (discovered while attempting a demo at CodeBEAM Lite London).
  • Improvements to generated documentation, including main README.
  • Added/improved unit tests.
  • Bump dependencies.
  • Various documentation, comment tidying up tasks.
1 Like