39 lines
2.3 KiB
Markdown
39 lines
2.3 KiB
Markdown
|
# Лабораторная работа №3 - REST API, Gateway и синхронный обмен между микросервисами
|
|||
|
|
|||
|
## Задание
|
|||
|
|
|||
|
+ Создать 2 микросервиса, реализующих CRUD на связанных сущностях.
|
|||
|
+ Реализовать механизм синхронного обмена сообщениями между микросервисами.
|
|||
|
+ Реализовать шлюз на основе прозрачного прокси-сервера nginx.
|
|||
|
|
|||
|
### Микросервисы
|
|||
|
1. **teacher_service** — сервис, который управляет информацией о пользователях
|
|||
|
|
|||
|
2. **discipline_service** — сервис, который обрабатывает данные о заказах пользователей.
|
|||
|
|
|||
|
### Критерии
|
|||
|
|
|||
|
+ Микросервисы должны быть связаны как 1-ко-многим.
|
|||
|
Например, учитель (teacher) может преподовать несколько дисциплин (discipline).
|
|||
|
|
|||
|
## Описание работы
|
|||
|
|
|||
|
Данная лабораторная работа написана на языке - pyton.
|
|||
|
|
|||
|
1. Реализация синхронного обмена
|
|||
|
|
|||
|
Сервис **teacher_service** отправляет HTTP-запросы к сервису **discipline_service** при выполнении определенных операций CRUD. Тем самым получим актуальную информацию о дисциплинах, связанных с конкретными учителем.
|
|||
|
|
|||
|
2. Реализация gateway при помощи nginx
|
|||
|
|
|||
|
Конфигурационный файл **Nginx** определяет настройки веб-сервера и обратного прокси. Он управляет входящими запросами и направляет их на соответствующие сервисы.
|
|||
|
|
|||
|
3. Docker Compose
|
|||
|
|
|||
|
Конфигурационный файл docker-compose.yml - это многоконтейнерное приложение, которое включает в себя три сервиса: teacher_servic, discipline_service и nginx.
|
|||
|
|
|||
|
# Видеозапись работы программмы
|
|||
|
|
|||
|
https://vkvideo.ru/video186826232_456239554
|
|||
|
|