Quarkus Kafka Quickstart
This project illustrates how you can interact with Apache Kafka using MicroProfile Reactive Messaging.
First you need a Kafka cluster. You can follow the instructions from the Apache Kafka web site or run
docker-compose up if you have docker installed on your machine.
Start the application
The application can be started using:
mvn compile quarkus:dev
Then, open your browser to
http://localhost:8080/prices.html, and you should see a fluctuating price.
In addition to the
prices.html page, the application is composed by 3 components:
PriceGenerator- a bean generating random price. They are sent to a Kafka topic
PriceConverter- on the consuming side, the
PriceConverterreceives the Kafka message and convert the price. The result is sent to an in-memory stream of data
PriceResourceretrieves the in-memory stream of data in which the converted prices are sent and send these prices to the browser using Server-Sent Events.
The interaction with Kafka is managed by MicroProfile Reactive Messaging. The configuration is located in the application configuration.
Running in native
You can compile the application into a native binary using:
mvn clean package -Pnative
and run with: