40 lines
2.4 KiB
Markdown
40 lines
2.4 KiB
Markdown
# Лабораторная работа №3 - REST API, Gateway и синхронный обмен между микросервисами
|
||
|
||
## ПИбд-42 || Давыдов Юрий
|
||
|
||
### Описание:
|
||
|
||
В рамках данной лабораторной работы были реализованы две сущности с отношением "один-ко-многим", а также разработаны все CRUD-операции: получение списка записей, получение одной записи, создание, редактирование и удаление записей.
|
||
|
||
Для сущности "факультет" была добавлена возможность получения записи вместе со списком всех специальностей, что осуществляется через взаимодействие с другим сервисом. Также реализована проверка наличия факультета по его id.
|
||
|
||
Для сущности "специальность" предусмотрены следующие операции: получение списка записей с информацией о факультете, получение списка по id факультета, а также получение одной записи с данными о факультете.
|
||
|
||
Цель лабораторной работы
|
||
Изучение шаблона проектирования Gateway, построение синхронного обмена между микросервисами и архитектурного стиля RESTful API.
|
||
|
||
Выбранные сущности:
|
||
Факультет: поля - Uuid, Name, Description
|
||
Специальность: поля - Uuid, Name, CountPlaces, Faculty_Id
|
||
Инструкция для работы
|
||
Клонирование репозитория:
|
||
bash
|
||
Копировать код
|
||
git clone <ссылка-на-репозиторий>
|
||
cd <папка репозитория>
|
||
cd <папка лабораторной работы>
|
||
|
||
```
|
||
|
||
2. Запуск контейнеров:
|
||
|
||
```
|
||
|
||
docker compose up --build
|
||
|
||
```
|
||
|
||
3. Результаты:
|
||
В результате можно будет применят CRUD операции к сущностям через http запросы. Для демонстрации был выбран знакомый инструмент Postman.
|
||
```
|