ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 29.11.2023
Просмотров: 119
Скачиваний: 8
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Практическая работа № 01ЗАДАЧА.Построить диаграмму развертывания Full-stack приложения, определяя требования к развертыванию микросервисной архитектуры (MSA). Среда разработки приложения: PyCharm (язык программирования: Python), среда выполнения кода: Интернет-браузер на платформе Firefox (табл. 1).Таблица 1Исходные данные (вариант 33) для установления требований к MSA
решениеРешение задачи определения требований к MSA для варианта № 33 (табл. 1) приводится по следующим исходным данным:
Рис. 1. Диаграмма развертывания для определения требований к MSA
Admin ..> nDatabase : deploy
Admin ..> nPythonRPC : manifest
nPythonIDE --> nPythonRPC : "\n__HTTP__"
nPythonRPC -> nWebServer : " __RESTful API__\n"
aLogin .left.> aKey : \nmanifest
aPassword .right.> aKey : \nmanifest
@enduml
| Значение | По цифре y | По цифре z | ||||||
| Цифры (yz) | Типовые операции 2 | Интерфейсы (API) | Разрешенные типовые операции для заданных ролей | Условие изменения роли User | Мессенджер | Браузер для тестирования в Selenium | Доступ к контенту БД | |
| 3 | CQRS | RESTful / HTTP | Guest: CQ; User: CQR; IgnUser: C; Admin: CQRS | IgnUser, если не пытался ответить на 4 вопроса подряд | – | – | – | |
| 3 | – | – | – | – | | Firefox | API token | |
-
типовые операции: CQRS; доступ к типовым операциям:-
Guest: CQ; -
User: CQR -
; IgnUser: C; -
Admin: CQRS;
-
-
условие изменения роли User: становится IgnUser, , если не пытался ответить на 4 вопроса подряд; -
интерфейсы: RESTful / HTTP; -
мессенджер: WhatsApp; -
драйвер тестирования Selenium: для Интернет-браузеров на платформе Chromium; -
доступ к контенту БД: по API-токену.
-
соответствие драйвера Selenium для задач автоматизированного тестирования: для установленного на компьютере Интернет-браузера Firefox (версия 109.0.1 для 64-разрядной Windows 10) выбрана предшествующая версия архива firefox_109.0.1.exe (версия 109.0.1 для операционной системы, совместимой с 32-разрядной Windows);
Рис. 1. Диаграмма развертывания для определения требований к MSA
-
взаимодействие с веб-сервером, используя Python, может осуществляться с помощью Spyne (выполняет RPC на языке Python): входной протокол HTTP, выходной протокол RESTful; -
должен быть сформирован токен API, доступ к которому есть только у администратора (роль Admin); -
СУБД должна быть типа ключ-значение, поскольку доступ задан с помощью HTTP; -
если пользователь не отвечает на 4 отправленных запроса, пользователь, имеющий роль User, получает роль IgnUser.
Admin ..> nDatabase : deploy
Admin ..> nPythonRPC : manifest
nPythonIDE --> nPythonRPC : "\n__HTTP__"
nPythonRPC -> nWebServer : " __RESTful API__\n"
aLogin .left.> aKey : \nmanifest
aPassword .right.> aKey : \nmanifest
@enduml