Skip to content

This repository demonstrates a modular and scalable microservices architecture implemented using Spring Boot.

Notifications You must be signed in to change notification settings

aakashRepoCodes/java-microservices-architecture

Repository files navigation

Java Microservices Architecture

A microservices-based architecture built with Java, Spring Boot, Kafka, and observability tools like Prometheus and Grafana.

App Architecture

Features

  • Decoupled Services: Independent services with REST APIs and Kafka.
  • Event-Driven Architecture: Kafka for asynchronous messaging.
  • Authentication: Keycloak for OAuth2-based security.
  • Monitoring: Metrics with Prometheus and Grafana; centralized logs with Loki.
  • Resiliency: Fault tolerance with Circuit Breaker patterns.

Technologies

  • Frameworks: Spring Boot, Spring Cloud
  • Messaging: Kafka
  • Database: MySQL, MongoDB
  • Authentication: Keycloak
  • Monitoring: Prometheus, Grafana, Loki
  • Build Tool: Gradle
  • Containerization: Docker

Services

  1. Order Service: Handles order placement and sends events to Kafka.
  2. Notification Service: Listens to Kafka and sends email notifications.
  3. API Gateway: Centralized routing and authentication.

About

This repository demonstrates a modular and scalable microservices architecture implemented using Spring Boot.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages