Skip to content

BogdanPryadko4853/microservice-store-main

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Microservice Store


АрхитСктура ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ

Architecture


Π­Ρ‚ΠΎ дСмонстрационноС микросСрвисноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ с использованиСм Spring Cloud, для управлСния ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΎΠΌ.


ΠžΠ±Π·ΠΎΡ€

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ дСмонстрируСт Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ микросСрвисов, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСрвис ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° свою ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Оно Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ основныС сСрвисы:

  • auth-service: БСрвис Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.
  • config-server: БСрвис для Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ управлСния конфигурациями.
  • customer: БСрвис управлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ….
  • discovery: БСрвис для рСгистрации ΠΈ обнаруТСния сСрвисов.
  • gateway: API Gateway для ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ запросов.
  • order: БСрвис управлСния Π·Π°ΠΊΠ°Π·Π°ΠΌΠΈ.
  • notification: БСрвис для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ.
  • payment: БСрвис для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ΅ΠΉ.
  • product: БСрвис управлСния ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°ΠΌΠΈ.
  • user-service: БСрвис управлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ

  • Spring Cloud: Для создания микросСрвисной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹.
  • Docker & Docker Compose: Для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ управлСния сСрвисами.
  • PostgreSQL: Основная Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… для хранСния Π΄Π°Π½Π½Ρ‹Ρ….
  • MongoDB: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, настроСк).
  • Zipkin: Для распрСдСлСнной трассировки.
  • Kafka: Для асинхронного взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвисами.
  • Maildev: Для тСстирования ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ email.

Π‘Ρ…Π΅ΠΌΠ° Π‘Π°Π·Ρ‹ Π”Π°Π½Π½Ρ‹Ρ…

Database Scheme


Запуск ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ

ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ трСбования

  1. УстановлСнный Docker ΠΈ Docker Compose.
  2. УстановлСнный Git.

Π¨Π°Π³ΠΈ ΠΏΠΎ запуску

  1. ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ рСпозитория:

    git clone https://github.com/BogdanPryadko4853/microservice-store-main
    cd microservice-store-main
  2. Запуск Docker Compose:

    docker-compose up -d --build

    Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° запустит всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ сСрвисы Π² Docker-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ….

ОписаниС сСрвисов

  • auth-service: БСрвис Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.
  • config-server: Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.
  • customer-service: БСрвис управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ….
  • discovery-service: БСрвис для обнаруТСния Π΄Ρ€ΡƒΠ³ΠΈΡ… сСрвисов.
  • gateway: БСрвис, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π° Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
  • notification-service: БСрвис ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ.
  • order-service: БСрвис для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π°ΠΊΠ°Π·ΠΎΠ².
  • payment-service: БСрвис для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ°ΠΌΠΈ.
  • product-service: БСрвис управлСния ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°ΠΌΠΈ.
  • user-service: БСрвис управлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

About

πŸ›  User Service (Microservice) Core Functionality: - User registration & authentication - Profile management (CRUD operations) - Role-based access control (RBAC) - JWT token generation/validation Tech Stack: - Spring Boot 3.x - Spring Security - JPA/Hibernate - PostgreSQL - JWT (Auth0) - Docker-ready Integration

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors