Skip to content

smoliakoff/3-microservices

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API Gateway

Доступен по адресу http://localhost:8000

Сервис товаров

Доступен по адресу http://localhost:8081

Сервис заказов

Доступен по адресу http://localhost:8082

Запуск и управление контейнерами

Соберите и запустите контейнеры:

docker-compose up --build

Остановка контейнеров

docker-compose down

Перезапуск контейнеров

docker-compose restart

Тестовое задание

Тестовое задание для разработчика:

Разработка системы управления каталогом товаров с использованием микросервисной архитектуры

Задача - разработать систему управления каталогом товаров, используя микросервисную архитектуру. Система должна включать в себя три микросервиса:

  1. Управление товарами
  2. Управление заказами
  3. BFF

Важно продемонстрировать принципы микросервисной архитектуры и обеспечить чистоту кода и его тестируемость. Требования:

Микросервис управления товарами (Product Service):

  • Реализовать CRUD операции для управления товарами (создание, чтение, обновление, удаление).
  • Каждый товар должен иметь уникальный идентификатор, название, описание, цену и список категорий (категории опционально)
  • Обеспечить валидацию вводимых данных.
  • Добавить возможность поиска товаров по названию
  • Использовать базу данных для хранения информации о товарах.

Микросервис управления заказами (Orders Service):

  • Реализовать CRUD операции для управления заказами (создание, чтение, обновление, удаление).
  • Каждый заказ должен иметь уникальный идентификатор, адрес доставки и список продуктов с количеством и ценой продажи
  • Обеспечить валидацию вводимых данных.
  • Добавить возможность поиска заказов по товару
  • Использовать базу данных для хранения информации о заказах.

API Gateway:

  • Реализовать API Gateway
  • Настроить маршрутизацию запросов к микросервису управления товарами.
  • Обеспечить простую обработку ошибок и логирование запросов.

Документация API:

  • Создать документацию API с использованием Swagger или аналогичного инструмента.

Бонусные задания (необязательно):

  • Полнотекстовый поиск по названию, описанию или категориям.
  • Кэширование ответов на часто запрашиваемые операции для повышения производительности.
  • Создать Docker-контейнеры для каждого микросервиса и описать процесс их развёртывания с помощью Docker Compose.

P.S. Язык и фреймворк по своему усмотрению (PHP, Java, Kotlin, C#)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages