.. | ||
faculty_service | ||
speciality_service | ||
docker-compose.yaml | ||
gitignore | ||
nginx.conf | ||
README.md | ||
requirements.txt |
Лабораторная работа №3 - REST API, Gateway и синхронный обмен между микросервисами
ПИбд-42 || Исмаилов Ровшан
Описание:
рамках лабораторной работы были созданы две сущности со связью "один-ко-многим". Реализованы все CRUD-операции, включая:
- Получение списка записей.
- Получение одной записи.
- Создание новой записи.
- Редактирование существующей записи.
- Удаление записи.
Для сущности "Факультет" добавлена возможность получения записи вместе со списком всех связанных специальностей. Этот функционал предполагает взаимодействие с другим сервисом. Также реализована проверка существования факультета по его ID.
Сущность "Специальность" дополнена следующими функциями:
- Получение списка записей с информацией о факультетах.
- Получение записей, связанных с конкретным факультетом (по ID факультета).
- Получение одной записи с подробной информацией о факультете.
Цель лабораторной работы
Овладение принципами проектирования шаблона Gateway, построения синхронного взаимодействия между микросервисами и разработкой RESTful API.
Выбранные сущности:
- Факультет. Поля: Uuid, Name и Description
- Специальность. Поля: Uuid, Name, CountPlaces и Faculty_Id
Инструкция для работы
- Клонирование репозитория:
git clone <ссылка-на-репозиторий>
cd <папка репозитория>
cd <папка лабораторной работы>
- Запуск контейнеров:
docker compose up --build
- Результаты: В результате можно будет применят CRUD операции к сущностям через http запросы. Для демонстрации был выбран знакомый инструмент Postman.