forked from Alexey/DAS_2023_1
59 lines
2.2 KiB
Markdown
59 lines
2.2 KiB
Markdown
# Лабораторная работа №3 - RESTAPI, Gateway и синхронный обмен между микросервисами
|
||
|
||
1) Создать 2 микросервиса, реализующих CRUD на связанных сущностях.
|
||
2) Реализовать механизм синхронного обмена сообщениями между микросервисами.
|
||
3) Реализовать шлюз на основе прозрачного прокси-сервера nginx.
|
||
|
||
# Сущности:
|
||
- VKImages:
|
||
1) ID: Id автогенерируемый в программе.
|
||
2) Url: ссылка на фото пользователя.
|
||
3) Text: текст фото, не содержащийся на фото, а приложенный текст к фото в ВКонтакте.
|
||
- VKUsers:
|
||
1) ID: Id автогенерируемый в программе.
|
||
2) Url: ссылка на пользователя.
|
||
3) PhotoUrl: ссылка на фото пользователя.
|
||
# Как запустить
|
||
Командой "docker-compose up -d" в папке VKUsers/src/main/java/com/example/vkUsers
|
||
|
||
# Работа программы
|
||
Так как скриншоты этой программы можно делать очень долго, то основная работа программы будет видна в видео,
|
||
в данном фотоотчете будут основные аспекты программы.
|
||
|
||
Начнем с VKImages. Модель следующая:
|
||
|
||

|
||
|
||
Контроллер с url для оснонвых методов swagger (PUT, GET, POST, DELETE):
|
||
|
||

|
||
|
||
DockerFile:
|
||
|
||

|
||
|
||
Теперь VKUsers. Модель:
|
||
|
||

|
||
|
||
Контроллер с url для оснонвых методов swagger (PUT, GET, POST, DELETE):
|
||
|
||

|
||
|
||
DockerFile:
|
||
|
||

|
||
|
||
DockerCompose:
|
||
|
||

|
||
|
||
nginx-config:
|
||
|
||

|
||
|
||
Синхронный обмен в следующем методе:
|
||
|
||

|
||
|
||
Видео -> https://drive.google.com/file/d/1D-8urLmnXjgNRQJJWq9SKR35FF0sBSWL/view?usp=sharing |