irinatomic / Fitness_centre_microservises_project

Fitness centre structured as a microservices-based architecture

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fitness Centre Microservices Project

This project, developed for a University subject "Software Components," aims to create a microservices application for a fitness centre. The application architecture encompasses a frontend implemented in Vue.js, an API Gateway using Zuul, a service registry - Eureka, and three microservices developed with Java Spring:

  1. User Service
  2. Training Reservation Service
  3. Notification Service

Running Locally

To run the application locally:

  1. Frontend: From the frontend folder, run npm run serve.
  2. Backend start the:
    1. Eureka - service registry
    2. Zuul - api gateway
    3. MessageBroker.
    4. User service.
    5. Reservation service.
    6. Notification service.

Access databases and the Swagger UI for testing purposes using the following links:

User Service

Name Access link
Database http://localhost:8081/h2-console
JDBC Driver jdbc:h2:mem:user-service-db
Swagger UI for API calls http://localhost:8081/swagger-ui.html#/

Reservation Service

Name Access link
Database http://localhost:8082/h2-console
JDBC Driver jdbc:h2:mem:reservation-service-db
Swagger UI for API calls http://localhost:8082/swagger-ui.html#/

Notification Service

Name Access link
Database http://localhost:8083/h2-console
JDBC Driver jdbc:h2:mem:notif-service-db
Swagger UI for API calls http://localhost:8083/swagger-ui.html#/

Database schemas

Each service has it's own database.

User Service users_db

Reservation Service reservation_db

Notification Service notif_db

About

Fitness centre structured as a microservices-based architecture


Languages

Language:Java 78.0%Language:Vue 15.4%Language:JavaScript 6.4%Language:HTML 0.2%