Skip to content

Repository files navigation

build-all-workflow

Event-Driven Microservices

A hands-on playground for experimenting with event-driven communication using Apache Kafka.

Overview

This repository explores event-driven microservices patterns. It demonstrates how microservices can collaborate asynchronously using events, without tight coupling.

Orchestration
cd choreography/docker
docker compose up -d

NGINX was added to handle SSL termination in front of the gateway!

CQRS
cd cqrs/docker
ISSUER_URI=<issuerUri> docker compose up -d

Some additional features were added:

  • Use Redis in production and ConcurrentHashmap in development to cache query-ms responses.
  • Apply Rate Limiting using Bucket4j. Redis is used in production, while Caffeine is used in development/testing.
  • Protect the gateway and downstream services using OAuth2 Resource Server.
  • NGINX handles SSL termination in front of the gateway.
  • Add OpenAPI + Swagger Support.
  • The ISSUER_URI variable must be provided in Docker Compose.
SAGA
SAGA Orchestration pattern is on the works!

About

Event Driven Microservices Playground

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages