forked from Alexey/DAS_2024_1
19 lines
2.8 KiB
Markdown
19 lines
2.8 KiB
Markdown
# Лабораторная работа 3
|
||
Данная работа посвящена теме синхронного обмена сообщениями между сервисами, а так же шлюзам, для взаимодействия с внешним миром.
|
||
## Описание
|
||
В качестве предметной области использовался пример 18-го варианта. Имеются 2 сущность: контрагент(только имя) и договор(номер, ФИО менеджера, дата создания и статус).
|
||
Для реализации была выбрана платформа ASP.net. Информация хранится в СУБД Postgres, которая так же поднимается в контейнере(вместе с остальными сервисами)
|
||
Система позволяет проводить с сущностями базовые CRUD операции. В случае договора, имеется возможность получения его в связке с информацией по контрагенту(не просто Id, но и имя). В этот момент сервисы и взаимодействуют друг с другом. Для этого используется шлюз(напрямую сервисы друг о друге могут и не знать, общение как с внешним миром так и между собой только через nginx шлюз)
|
||
В качестве интерфейса имеется Swagger, который можно использовать для отправки запросов. Он и будет показан в видеодеомнстрации
|
||
## Запуск
|
||
Для запуска лабораторной работы необходимо иметь запущенный движок Docker на устройстве.
|
||
Необходимо перейти в папку, где располагается данный файл. Далее открыть терминал и ввести команду:
|
||
```
|
||
docker compose up -d --build
|
||
```
|
||
Важно, чтобы в этот момент на компьютере был свободен порт 80.
|
||
В результате, после сборки вся система запустится и Swagger-ы будут доступны по путям http://localhost/first/swagger и http://localhost/second/swagger
|
||
## Видеодемонстрация
|
||
Был записан видеоролик, демонстрирующий процесс запуска и работы системы, а так же всех её основных функйи. Он расположен по [адресу](https://drive.google.com/file/d/17OwZ6kEJ-AaW0uMTIfNtolyp-oyy9OfT/view?usp=sharing)
|
||
|