Previously, I was using spring kafka clients, but once I need kafka clients in project using Guice and didn't find something stable, so developed something unstable by myself :)
There are 3 packages.
- metrics - contains metrics with statsd and Guice. Could be easily (almost) replaced with micrometer implementation
- utils - utils package with few methods (maybe useless package)
- kafka-clients - client itself
There 2 main classes:
- KafkaProducerDelegator - is simple wrapper above KafkaProducer. There is nothing multi-threaded with producer
- KafkaConsumerManager - wrapper above set of KafkaConsumer s.