It is kinda hard to consume data from Kafka using its standard client/Consumer. Let's provide a simple Iterator/Stream based interface that doesn't need to do manual polling and shutdown management. Borrowing ideas from the recently implemented kafka-streams.. E.g.
Consumers can no longer be obtained via KafkaClientFactory. Instead inject KafkaConsumerFactory and use its consumer builder methods.
Producers can no longer be obtained via KafkaClientFactory. Instead inject KafkaProducerFactory and use its consumer builder methods.
kafkaclient.consumer.autoCommitIntervalMs is renamed to kafkaclient.consumer.autoCommitInterval and is now a duration (so you can use readable values like "1ms". Same goes for kafkaclient.consumer.sessionTimeoutMs that got renamed to kafkaclient.consumer.sessionTimeout.
It is kinda hard to consume data from Kafka using its standard client/Consumer. Let's provide a simple Iterator/Stream based interface that doesn't need to do manual polling and shutdown management. Borrowing ideas from the recently implemented
kafka-streams
.. E.g.Upgrade Notes:
Consumers can no longer be obtained via
KafkaClientFactory
. Instead injectKafkaConsumerFactory
and use its consumer builder methods.Producers can no longer be obtained via
KafkaClientFactory
. Instead injectKafkaProducerFactory
and use its consumer builder methods.kafkaclient.consumer.autoCommitIntervalMs
is renamed tokafkaclient.consumer.autoCommitInterval
and is now a duration (so you can use readable values like "1ms". Same goes forkafkaclient.consumer.sessionTimeoutMs
that got renamed tokafkaclient.consumer.sessionTimeout
.