Microservice demo showcasing Quarkus features and best practices
Top 83.6% on sourcepulse
This repository provides a sample microservices application demonstrating Quarkus features and best practices for building cloud-native applications. It targets developers looking to learn or showcase Quarkus capabilities in building distributed systems with REST, gRPC, Kafka, and various persistence options. The benefit is a comprehensive, runnable example of a modern Java microservices architecture.
How It Works
The application comprises several independent microservices, including UI, Hero, Villain, Location, Fight, and Narration services, communicating via REST, gRPC, and Kafka. It showcases reactive and blocking programming models, different data stores (PostgreSQL, MariaDB, MongoDB), and integrates with external services like OpenAI and monitoring tools (Prometheus, Jaeger). Key Quarkus extensions for Kafka, Hibernate, RESTEasy Reactive, and templating are utilized.
Quick Start & Requirements
docker compose -f deploy/docker-compose/java21.yml up --remove-orphans
(for JVM) or docker compose -f deploy/docker-compose/native.yml up --remove-orphans
(for native).Highlighted Details
Maintenance & Community
This is an official Quarkus sample application. Further community engagement details are not explicitly provided in the README.
Licensing & Compatibility
The repository is licensed under the Apache License 2.0, which is permissive and suitable for commercial use.
Limitations & Caveats
Kubernetes deployment descriptors are explicitly noted as not production-ready, lacking high availability, Kubernetes operators, and using ephemeral storage for databases and Kafka.
3 days ago
1 day