Skip to content

Latest commit

 

History

History
84 lines (63 loc) · 4.22 KB

File metadata and controls

84 lines (63 loc) · 4.22 KB

Java Spring Boot Eureka Spring Cloud Gateway Hibernate

Keycloak Kafka Prometheus Grafana Zipkin

MongoDB PostgreSQL MySQL Docker


JavaCart

JavaCart is a project designed for building and managing microservices that power a webshop ecosystem.

Developed with Java and Spring Boot, this platform integrates Eureka for service discovery, Keycloak for secure authentication, Kafka for efficient event-driven communication, and PostgreSQL, MySQL and MongoDB for flexible data storage. It offers a unified solution for creating, scaling, and orchestrating microservices in a webshop environment. With a focus on reliability and scalability, this application is tailored for building and experimenting with webshop microservices architectures.


Used technologies:

Backend

  • Java
  • Spring Boot, Spring Security
  • Spring Cloud Netflix, Spring Cloud Gateway
  • Actuator
  • Kafka
  • Webflux
  • JPA Hibernate
  • Lombok

Frontend

  • Vue (to be developed in the future)

Database

  • MySQL
  • PostgreSQL
  • MongoDB

Others

  • Docker
  • Jib
  • Keycloak
  • Zookeeper
  • Zipkin
  • Prometheus
  • Grafana

Installation:

Follow these instructions to get a copy of the Microservices project up and running on your local machine:

1. Clone the repository

git@github.com:RMNorbert/Microservices.git

2. Add environment variables for each module according to the application.properties files

The files located in each module in

src/main/resources/

3.1 How to run the application using Docker

All service avaiable through image.
Run mvn clean package -DskipTests to build the applications and create the docker image locally.
Run docker-compose up -d to start the applications.

3.2 How to run the application without Docker

Run mvn clean verify -DskipTests by going inside each folder to build the applications.
After that you have to run the docker-compose up -d in the notification-service folder
After that run mvn spring-boot:run by going inside each folder to start the applications.