Programmation Évènementiel - Kafka
Find a file
faraphel f909b5da9f fixed an error in the README
this is up to the consumer container to print the value since the application one have been splitted
2024-07-05 08:56:57 +00:00
.idea split the project into 3 modules and an additional module for common code 2024-07-03 12:42:18 +02:00
.run split the project into 3 modules and an additional module for common code 2024-07-03 12:42:18 +02:00
applications improved the documentation for each module and removed the automatic creation of topics since they are already created automatically 2024-07-03 20:26:16 +02:00
.gitignore split the project into 3 modules and an additional module for common code 2024-07-03 12:42:18 +02:00
docker-compose.yaml fixed the healthcheck with the new API url scheme 2024-07-03 23:01:07 +02:00
LICENSE added licensing file 2024-06-23 12:58:26 +00:00
m1-PE-Kafka.iml split the project into 3 modules and an additional module for common code 2024-07-03 12:42:18 +02:00
README.md fixed an error in the README 2024-07-05 08:56:57 +00:00

Kafka + Quarkus + Docker : Demonstration

License Kotlin Kafka Quarkus Docker

A small university project to discover the Quarkus Framework combined with the Kafka library, the whole compatible with Docker.

Run

You can run the project very simply with either Intellij IDEA, or directly within a terminal.

Intellij IDEA

Simply clone and load the project into the IDE and in the run configurations, choose compose.

Terminal

Alternatively, you can build and run the project manually by using gradle and launching the application with docker-compose.

# build the modules
(cd ./applications/consumer/ && ./gradlew build)
(cd ./applications/converter/ && ./gradlew build)
(cd ./applications/producer/ && ./gradlew build)
# start the docker based on the docker-compose.yaml file
docker compose up

Configuration

The configuration can be modified in the docker-compose.yaml file to fit your needs.

You can find a list for each module of the project containing their individual configuration :

Expectation

The consumer container shall print the current temperature at the selected place in Fahrenheit every minute.
You can also access this value with the REST api at the http://localhost:8080/v1/temperature endpoint.

References

The project use the Open-Meteo API to fetch the current temperature at the given location.