apache kafka – Using SmallRye Reactive Messaging in Quarkus for Fan-out use case

I’m new to Quarkus and SmallRye reactive messaging.

I have a use case where the application receives Kafka messages. Each message contains a batch of “records” and an identifier. Based on the identifier, these records will be routed to other “routers”, which are essentially Kafka topic(s), each record as a new Kafka message to those particular topics(s).

Some requirements:

  • The original Kafka message only be ack-ed if there is a potential router, otherwise will be nack-ed and sent to a DLQ.
  • Context propagation is required as we use OTel for tracing.
  • Don’t know if applicable here, but it should be optimized for throughput.

How can I achieve this with Quarku SmallRye Reactive Messaging Kafka? Apology if there is any vague points.

Read more here: Source link