Skip to content

Project - Parking management - Java, Spring Boot, Kafka, VueJs

Notifications You must be signed in to change notification settings

abakumova/parking-esi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parking Management (Team 7)

Stack:

  • Java 17
  • Spring Boot (Hibernate, Security)
  • VueJs

Technologies:

  • Eureka
  • API Gateway
  • Load balancing
  • Kafka
  • JWT
  • PostgreSQL
  • Docker
  • Resilient microservices pattern - Circuit Breaker in Booking service

Services:

  • Eureka - http://localhost:8761/
  • User Management
  • Booking
  • Location (Update API key in application.properties)
  • Parking Management
  • Analytics
  • Payment
  • Kafka - 9092

Swagger (OpenAPI) available for each service:

  • http://localhost:{port}/swagger-ui/index.html#/
  • Some services need jwt token for making requests - Use User Management first - (auth-controller register or authenticate endpoints to receive token) - copy access_token and paste it to Authentication field in Swagger

Run:

  • Docker compose docker-compose up
  • Run Eureka
  • Run all other services
  • Run VueJs (install dependencies) - npm run serve

Kafka

  • booking-topic
    docker exec --interactive --tty broker kafka-console-consumer --bootstrap-server broker:9092 --topic booking-topic --from-beginning
Topic Name Producer Consumer Object Exchanged Action
booking-topic Booking Analytics BookingDto No action

Contributors:

University of Tartu 2023