8000 GitHub - RanisKzn/Marketplace: Используемые микросервисы на платформах .NET ASP.NET Web API, Docker, RabbitMQ, OCelot API Gateway, PostgreSQL, Mongodb, Redis, Entity Framework Core, YOS
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Используемые микросервисы на платформах .NET ASP.NET Web API, Docker, RabbitMQ, OCelot API Gateway, PostgreSQL, Mongodb, Redis, Entity Framework Core, YOS

Notifications You must be signed in to change notification settings

RanisKzn/Marketplace

Repository files navigation

🛒 Marketplace Microservices Project

Архитектура

📚 Описание

Marketplace — это учебный pet-проект с микросервисной архитектурой, реализованный на базе .NET, предназначенный для изучения и практики следующих концепций:

  • Микросервисы
  • Аутентификация и авторизация (JWT)
  • API Gateway (Ocelot)
  • RabbitMQ
  • Redis / PostgreSQL / MongoDB
  • Docker / Docker Compose
  • React.js (Frontend)

🧩 Архитектура

Проект использует архитектуру, в которой каждый микросервис отвечает за свою зону ответственности и взаимодействует через HTTP или RabbitMQ.
Фронтенд обращается к API Gateway, который маршрутизирует запросы к нужным сервисам.

Архитектура

🔐 Аутентификация

  • AuthService отвечает за регистрацию, логин и генерацию JWT-токенов.
  • Все микросервисы валидируют токены самостоятельно.

📦 Сервисы

Сервис Описание Технологии
API Gateway Центральная точка входа. Маршрутизирует запросы. Ocelot, .NET
AuthService Регистрация, логин, JWT. ASP.NET Identity, JWT
ProductService Каталог товаров. MongoDB, ASP.NET Core
CartService Управление корзиной. Кэширует данные. PostgreSQL, Redis
OrderService Оформление и обработка заказов. PostgreSQL, RabbitMQ
NotificationService Отправка уведомлений после заказа. RabbitMQ
Frontend Интерфейс пользователя. React.js, JavaScript

🔁 Взаимодействие

  • FrontendAPI Gateway → маршрутизация по сервисам.
  • AuthService возвращает JWT токен.
  • Все запросы к микросервисам проходят через API Gateway.
  • Каждый микросервис валидирует токен самостоятельно.
  • OrderService отправляет сообщение в NotificationService через RabbitMQ.
  • CartService кэширует товары через Redis и взаимодействует с ProductService для получения деталей о товарах.

🐳 Docker & Compose

Проект содержит docker-compose.yml для локального запуска всех сервисов:

docker-compose up --build

🚧 После запуска:

About

Используемые микросервисы на платформах .NET ASP.NET Web API, Docker, RabbitMQ, OCelot API Gateway, PostgreSQL, Mongodb, Redis, Entity Framework Core, YOS

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0