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
|
||
|