DAS_2024_1/presnyakova_victoria_lab_3/readme.md

31 lines
2.3 KiB
Markdown
Raw Normal View History

2024-11-01 19:10:39 +04:00
# Задание:
- Создать 2 микросервиса, реализующих CRUD на связанных сущностях.
- Реализовать механизм синхронного обмена сообщениями между микросервисами.
- Реализовать шлюз на основе прозрачного прокси-сервера nginx.
Вариант: Сессии и события
## Выполнение
Были написаны два сервиса на языке python:
- Сервис session_service, хранящий данные о сессиях и реализующий CRUD операции с ними через HTTP запросы.
- Сервис event_service, хранящий данные о событиях и реализующий CRUD операции с ними через HTTP запросы.
- Сервисы синхронно сообщены - сервис сессия запрашивает данные у сервиса событий для получения событий сессии.
Для сервисов прописаны файлы Dockerfile, описывающие создание контейнеров:
Для обоих контейнеров выбирается Python 3.9.
Оба контейнера проявляют порты, на которых работает приложение: 8081 для событий и 8082 для сессий.
В оба контейнера устанавливаются пакеты Flask и requests.
Выбирается рабочая директория /work и туда копируются файлы скриптов.
Командой запускаются сами скрипты.
Общий yaml-файл развёртки был настроен следующим образом:
блок services, где перечислены разворачиваемые сервисы.
для каждого сервиса прописан build, где объявляется его папка и докерфайл создания и зависимости.
для сервиса nginx прописан порт для отображения вовне.
## Видео https://drive.google.com/file/d/1my-e51bAoxUaMHKpGJmd9ZXSR5GnmORS/view?usp=sharing