Файл: Практическая работа 01 по дисциплине программирование критических сервисов.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 05.12.2023
Просмотров: 90
Скачиваний: 11
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА» (СПбГУТ)Кафедра информационных управляющих системПрактическая работа № 01по дисциплине«ПРОГРАММИРОВАНИЕ КРИТИЧЕСКИХ СЕРВИСОВ»Студент гр. ИБ-13з ____________________________ Карнаухов Д.А.(подпись)Проверил ___________________________ Параничев А.В.(оценка и подпись)Санкт-Петербург2023 год Практическая работа № 01ЗАДАЧА.Построить диаграмму развертывания Full-stack приложения, определяя требования к развертыванию микросервисной архитектуры (MSA). Среда разработки приложения: PyCharm (язык программирования: Python), среда выполнения кода: Интернет-браузер на платформе Chromium (табл. 1).Таблица 1Исходные данные (вариант 09) для установления требований к MSA
решение
Решение задачи определения требований к MSA для варианта № 09 (табл. 1) приводится по следующим исходным данным:
| Значение | По цифре y | По цифре z | |||||
| Цифры (yz) | Типовые операции 2 | Интерфейсы (API) | Разрешенные типовые операции для заданных ролей | Условие изменения роли User | Мессенджер | Браузер для тестирования в Selenium | Доступ к контенту БД |
| 0 | CRUD | SOAP / XML | Guest: R; User: CR; TopUser: CRD; Admin: CRUD | TopUser, если сообщений 10 и более | – | – | – |
| 9 | – | – | – | – | Telegram | Opera | Ssh key |
Решение задачи определения требований к MSA для варианта № 09 (табл. 1) приводится по следующим исходным данным:
-
типовые операции: CRUD; доступ к типовым операциям:-
Create: Admin, User, TopUser; -
Read: Guest, User, Admin, TopUser; -
Update: Admin; -
Delete: Admin, TopUser;
-
-
условие изменения роли User: становится TopUser, если сообщений 10 и более; -
интерфейсы: SOAP / XML; -
мессенджер: Telegram; -
драйвер тестирования Selenium: для Интернет-браузеров на
-
доступ к контенту БД: SSH key.
-
взаимодействие с веб-сервером, используя Python, может осуществляться с помощью Spyne (выполняет RPC на языке Python): входной протокол XML Document, выходной протокол SOAP 1.1; -
Для ключа SSH была указана защищенная среда доступа PuTTY при выполнении разработки в операционной системе Windows. -
СУБД должна быть реляционной, поскольку доступ задан с помощью XML; -
при числе сообщений более 10, пользователь, имеющий роль User, получает привилегии роли TopUser.
}
node nWebServer as "Веб-сервер"{
artifact aSelenium as "WebDriver Selenium\n{Version = __90.0.4430.24__}\n{OS = __Windows x86__}"
artifact aBrowser as "Opera\n{Version = __98.0.4759.15__}\n{OS = __Windows x64__}"
}
User .> TopUser : manifest
Admin ..> nDatabase : deploy
Admin ..> nPythonRPC : manifest
nPythonIDE --> nPythonRPC : "\n__XML__"
nPythonRPC -> nWebServer : " __SOAP API__\n"
@enduml