42
Различают два варианта клиент-серверной архитектуры классическая
двухзвенная и ее развитие трѐхузвенная архитектура отличающаяся лучшей
масштабируемостью, конфигурируемостью и безопасностью (см. рисунок 4).
Система управления базами данных (СУБД) MySQL была выбрана для
разработки серверной части ПО по следующим причинам:
это зрелое (более 24 лет) и при этом активно развиваемое
сообществом и корпорацией Oracle ПО;
оно широко используется ИТ индустрии;
имеет отличную документацию[27];
поддерживает различные программные и аппаратные платформы;
может быть использовано совместно с большинством современных
языков программирования (а для языка программирования Python
существует несколько библиотек-драйверов), а также поддерживается
интерфейс Open Database Connectivity (уровни ODBC с 0 по 3,51),;
поддерживает следующие стандарты SQL: SQL-92, SQL:1999,
SQL:2003, SQL:2008, и SQL:2011;
имеет встроенные средства для резервного копирования;
возможность исправление недостатков клиент-серверной архитектуры
путем настройки отказоустойчивого кластера с помощью таких
технологий, как например: MySQL Router и InnoDB cluster.
Python — это популярный высокоуровневый язык программирования (ЯП)
общего назначения. Основные преимущества язык программирования Python
это быстрая разработка программ за счет выразительного синтаксиса,
динамической типизации, автоматического управления памятью, полной
интроспекции и механизма обработки исключений. Однако, главное достоинство
этого языка — это отличная читаемость кода программ за счет того, что при
разработке его синтаксиса разработчики старались не допустить возможности
двоякого написания кода[19, с.16], а также разработали руководство по
написанию кода на Python (PEP 8 - руководство по написанию кода на Python:
[сайт]. URL: https://www.python.org/dev/peps/pep-0008/).
Такой недостаток Python, как более низкое быстродействие по сравнению
с компилируемыми языками нивелируется возможностью легкой интеграции