Java, Spring Boot, Kafka, Elasticsearch, PostgreSQL, Prometheus, Grafana, Logstash, Kibana
A distributed event-driven microservices project using Spring boot, Spring cloud, Kafka and Elasticsearch
- Implemented CQRS and event sourcing pattern in Spring Boot, Spring Cloud, Apache Kafka, and Elasticsearch
- Utilized mock streaming tweets as source data and Docker for microservices containerization
- Adopted accept header/ content negotiation pattern for API versioning
- Externalized configuration in a separate config server repository
- Containerization of three microservices with docker images:
- twitter-to-kafka-service
- kafka-to-elastic-service
- elastic-query-service
live.demo.of.microservices.mov
- Elastic query service
- Reactive elastic web client service
- Security
- Kafak stream state store
- Postgres analytics store
- Netflex Eureka discovery service
- Spring API gateway & Redis rate limiter
- Monitored microservices with Prometheus, Grafana, and ELK stack (Elasticsearch, Logstash and Kibana)