This module contains Atleon streaming examples. Each example class is a runnable streaming example.
The following Kafka End to End to End sequence shows the incremental steps necessary to reactively produce messages to a Kafka Cluster and apply downstream streaming operations
- Kafka Part 1: Use a Kafka Sender to produce records to an embedded Kafka Broker
- Kafka Part 2: Consume sent records using Kafka Receiver
- Kafka Part 3: Extend Record consumption to stream process with at-least-once processing
- Kafka Part 4: Add another downstream consumer of processed results
- RabbitmqToKafka shows how Atleon allows interoperability between RabbitMQ (as a source/Publisher) and Kafka (as a sink/Subscriber) while maintaining at-least-once processing guarantee. For completeness KafkaToRabbitMQ shows the inverse, still maintaining at-least-once guarantees.
- Kafka Topic Partition Parallelism shows how to parallelize processing of Kafka Records and subsequent transformations by grouping of Topic-Partitions and assigning a Thread per group.
- Kafka Arbitrary Parallelism shows how to parallelize processing of Kafka Records and subsequent transformations by applying arbitrary grouping and assigning a Thread per group. This example (as well as the previous one) highly leverage built-in Acknowledgement Queueing to guarantee in-order acknowledgement of Record offsets.
- Kafka Error Handling shows how to apply resiliency to the processing of Kafka Records, both to possible upstream errors and downstream Acknowledgement Errors.
- Kafka Deduplication shows how to add deduplication to the processing of a Kafka topic. This example maintains the incorporation of Acknowledgement propagation such as to maintain at-least-once processing guarantee
- Kafka Micrometer shows how Atleon integrates with Micrometer to provide Metrics from Atleon streams, as well as bridging native Kafka metrics to Micrometer
- Kafka Opentracing shows how Atleon integrates with Opentracing to provide traces in reactive pipelines
- Example Kafka Application demonstrates general intended usage of Atleon in Spring (Boot) applications with Kafka integrations
- Example RabbitMQ Application demonstrates general intended usage of Atleon in Spring (Boot) applications with RabbitMQ integrations
- Example SNS SQS Application demonstrates general intended usage of Atleon in Spring (Boot) application with SNS and SQS integrations