ANALYSIS OF MICROSERVICE ARCHITECTURE IN E-LEARNING ENVIRONMENT WITH MULTIVARIATE ACCESS TO LEARNING MATERIALS
ANALYSIS OF MICROSERVICE ARCHITECTURE IN E-LEARNING ENVIRONMENT WITH MULTIVARIATE ACCESS TO LEARNING MATERIALS
Abstract
The article examines the application of microservices to implement access to educational data in a learning management system. One of the most problematic areas in the development of highly loaded online systems is the coordination of all microservices in a single system and the distribution of load on hardware resources at critical system load indicators.
In the course of the study, during the transition from monolithic architecture of LMS-system "Moodle" to microservice architecture the main indicators of server equipment and average response time to user requests were monitored. The proposed method of system implementation allows to significantly reduce the hardware requirements and reduce the response time of the system in conditions of high load (from 500 unique users per unit of time).
The obtained results of approbation of the method allow to regard it as an effective tool for the development of online learning systems with multivariate access to training materials.
The proposed method of system implementation allows to drastically reduce hardware requirements and reduce system response time under high load conditions. The presented architecture allows to significantly improve the functionality, flexibility and scalability of the system, especially in terms of service-oriented modules.
1. Введение
Стремительный рост спроса на онлайн обучение дал импульс развитию LMS-системам. Этот рост стал ощутим с переходом на дистанционное обучение . Опыт работы с готовыми решениями показал в большинстве случаев невозможность их использования, когда к системе могут получить доступ сразу сотни тысяч пользователей. В большинстве случаев проблемы масштабирования с таких систем решаются путем экспоненциального увеличения мощности оборудования. Это связано с тем, что LMS-системы построены на монолитной архитектуре, поэтому такие решения лишь откладывают проблемы в образовательной информационной системе на короткое время.
Традиционные подходы к развитию образовательных ресурсов очень часто ограничиваются монолитной архитектурой, которая уменьшает возможность к адаптивности и препятствует масштабируемости. Появление микросервисной архитектуры (МСА), основанной на принципах сервис-ориентированной архитектуры, позволяет расширить возможности в этой области. Разбивая сложные системы на более простые автономные сервисы, МСА обеспечивает более гибкий и модульный процесс разработки.
Разработка программного обеспечения (ПО) для автоматизации обучения становится все более преобладающим фактором оптимизации различных аспектов учебного процесса. Автоматизированное ПО позволяет преподавателям и студентам получать доступ к образовательным материалам в любое время и с любого устройства, что делает процесс обучения индивидуальным и гибким.
Наблюдается тенденция активного и повсеместного применения технологий контейнеризации микросервисов в образовании. Сегодня контейнеризация является одним из самых популярных способов для упаковки и развертывания приложений . По мнению специалистов , , , использование технологии микросервисной архитектуры упаковки образовательных сервисов в настоящее время – это ключевой фактор повышения качества предоставляемых образовательных ресурсов в LMS-системе.
Технология контейнеризации является одним из ключевых трендов в области информационных технологий. Эта технология позволяет организовать и управлять ресурсами в виде изолированных контейнеров, что обеспечивает масштабируемость и безопасность. Интеграция микросервисной архитектуры на основе контейнеризации может значительно улучшить функциональность LMS-системы «Moodle», особенно в части сервиса для управления образовательными материалами и сервиса оценки знаний обучающихся.
2. Методы и принципы исследования
Цель:реализации доступа к образовательным данным в системе управления процессом обучения с многовариантным доступом к данным для повышения эффективности организации образовательного процесса в LMS-системе «Moodle».
Задачи проекта:
1. Оценка существующей архитектуры LMS-системы «Moodle».
2. Разработка концепции микросервисной архитектуры, которая учитывает многовариантный доступ к образовательному контенту, включающий использование больших массивов структурированных, полуструктурированных и неструктурированных данных.
3. Определение настроек балансировки нагрузки в МСА реализации LMS-системы «Moodle».
Методы исследования: обзор литературы в области информатизации образования и применения технических средств в педагогическом процессе; анализ построения LMS-систем через возможные варианты организации очного или дистанционного обучения и их специфику в результате использования технологий контейнеризации и протоколов обмена данными между микросервисами; изучение и анализ педагогического опыта использования средств цифровизации образования; анализ существующих кейсов образовательных учреждений, которые используют микросервисы в LMS-системах; опросы компаний, предоставляющих ПО корпоративного уровня, о применении технологий контейнеризации и протоколов обмена данными между микросервисами в учебном процессе; анализ эффективности, масштабируемости микросервисов, реализованных в LMS-системах; обобщение полученных в результате анализа данных в виде концепции микросервисной архитектуры в системе управления процессом обучения; анализ метрик серверного оборудования для определения основных технических показателей при переходе от монолитной архитектуры к МСА.
3. Основные результаты
Вопросы внедрения технологии контейнеризации и протоколов обмена данными между микросервисами в систему образования напрямую связаны с повышения эффективности, гибкости и масштабируемости образовательных систем и процессов. Микросервисная архитектура, широко применяемая в разработке программного обеспечения, предоставляет эффективные инструменты для организации учебного процесса.
Проведенный анализ зарубежных и отечественных научных и научно-педагогических публикаций выявил существенное влияние данных технологий на подготовку ИТ-специалистов и формирование у него профессиональных компетенций, с помощью которых они смогут успешно решать практико-ориентированные задачи, возникающие на всех этапах жизненного цикла хранения, анализа и обработки данных, программных средств бизнес-аналитики.
Технология контейнеризации подразумевает, что каждый сервис может быть развернут и масштабирован независимо от других. Изоляция сервисов позволяет избежать «единой точки отказа» и уменьшить влияние отказов на другие компоненты системы. Микросервисы могут взаимодействовать между собой через API. Это позволяет разработчикам использовать различные технологии и языки программирования для каждого сервиса.
В настоящее время учебные курсы, включающиеаналитику данных, направлены на овладение обучающимися фундаментальных основ обработки данных и основан на четырех содержательно-методических трекерах (рис. 1).

Рисунок 1 - Содержательно-методические линии курс обучения аналитики данных в департаменте информатики, управления и технологий МГПУ
– наличие актуального источника данных, или источника больших данных;
– хранение данных в специализированных СУБД, хранилищах данных, облачных системах;
– извлечение данных по запросу;
– визуализация результатов.
Процесс оценки заданий обучающихся требует интерпретации решения задания за счет оформление решений в специализированных платформах JupyterLab, Hadoop или Spark.

Рисунок 2 - Монолитная архитектура LMS-системы «Moodle»

Рисунок 3 - Микросервисная архитектура LMS-системы «Moodle»
Для реализации микросервисов выделены следующие контейнеризованные серверы:
– сервер реляционной базы данных (RDB);
– сервер хранилища больших данных (BigData);
– сервер хранилища неструктурированных данных (HadoopWH);
– сервер интерактивных отчетов (JupyterHUB).
В результате получены два сервиса:
– сервис для управления образовательными материалами (СУОМ);

Рисунок 4 - МСА хранилища LMS-системы «Moodle»
СОЗО основан на использовании блокнотов платформы JupyterLab, которая является основным инструментов для анализа данных и научных исследований. Платформа предоставляет ряд инструментов и функций, которые упрощают преподавателям создание и совместное использование интерактивных блокнотов, учебных материалов, которые используются в лекциях, онлайн-курсах и самостоятельной работе обучающихся.
Множественный доступ к образовательным материалам предоставляет разнообразные интерфейсы для разных групп пользователей (например, администраторы, преподаватели, руководители департамента и студенты при использовании микросервисов «RDB», «NORDB», «HadoopWH», «JupyterHUB» получают наборы данных в зависимости от их уровня доступа).
Каждый из микросервисов располагается на отдельном контейнезированном виртуальном сервере, который получает необходимый ресурс в соответствии с общими принципами балансировки нагрузки на систему. Модуль балансировки нагрузки настраивается на уровне ядра сервера каждого сервера-сервиса и предусматривает использование алгоритмов принятия решений на основе состояния системы.
4. Описание аппаратной базы для проведения исследований
Исследование проводилось на выделенном сервере: на базе Intel Xeon Gold 2x 5218 v4, с частотой 2,8 ГГц, возможностью многопоточности – 48 потоков, 32 ядра и 256 ГБ оперативной памяти, 6ТБ жесткий диск SAS,RAID 1+0.
Исследования проводились на однотипных 20 образовательных курсах, связанных с использованием больших массивов данных. Нагрузка осуществлялась с помощью программной системы моделирования, а также снятия метрик из системы мониторинга Zabbix . Сформирована следующая нагрузка: 100, 500, 1000, 10000 пользователей. Основными характеристиками для анализа были: средний процент загрузки ядер ЦП, среднее значение использования оперативной памяти, среднее время ответа сервера, среднее время ответа баз данных для RDB, BigData, HadoopWH.
В табл. 1использованы следующие обозначения:
– CPU – средний процент загрузки ядер ЦП;
– MEM – среднее значение использования оперативной памяти;
– tср– среднее время ответа сервера;
– tсрRDB,tсрBD, tсрHWHсреднее время ответа баз данных соответственно для RDB, BigData, HadoopWH.
Таблица 1 - Средняя производительность сервера
Количество пользователей | 100 | |||||
Параметры | CPU, % | MEM, ГБ | tср, с | tсрRDB, с | tсрBD, с | tсрHWH, с |
Монолит | 4,12 | 2,52 | 0,1212 | 0,0041 | 0,0246 | 0,0546 |
МСА | 6,52 | 4,81 | 0,0961 | 0,0021 | 0,0054 | 0,0032 |
Количество пользователей | 500 | |||||
Монолит | 24,62 | 10,15 | 0,1842 | 0,0571 | 0,1323 | 0,0946 |
МСА | 20,15 | 21,97 | 0,1161 | 0,0096 | 0,0184 | 0,0063 |
Количество пользователей | 1000 | |||||
Монолит | 48,32 | 84,07 | 1,1533 | 0,2813 | 1,0234 | 0,2442 |
МСА | 36,17 | 98,11 | 0,4567 | 0,0144 | 0,0853 | 0,0452 |
Количество пользователей | 10000 | |||||
Монолит | 98,61 | 320,97 | 4,2332 | 2,3421 | 6,0645 | 8,5322 |
МСА | 69,14 | 124,34 | 0,3568 | 0,1123 | 0,8654 | 0,7652 |
При оценке среднего времени доступа к системе, построенной на МСА, используется среднее время доступа ко всем микросервисам без учета «времени простоя» микросервиса в единицу времени.
Результаты исследования показали:
– при нагрузке до 500 пользователей и менее 20 образовательных курсов нет необходимости переходить на МСА;
– при ожидаемой нагрузке более 500 пользователей и использовании более 100 образовательных курсов монолитная архитектура не может обеспечить бесперебойную работу системы. Самой распространенной ошибкой в системе было превышение таймаута ответа при обращении к полуструктурированным данным (сервер BigData) и неструктурированным данным (сервер HadoopWH);
МСА позволяет обрабатывать более 10000 пользователей, за счет возможности использования балансировки нагрузки между микросервисами. Это также связано с распределенной обработкой запросов и кэшированием данных сервисов.
5. Заключение
Исследование подтвердило ожидаемый результат от перехода монолитной архитектуры на МСАв случае многовариантного доступа к онлайн-ресурсам LMS-системы «Moodle», который заключался в целесообразности использования МСА в сильно нагруженных системах. Использование МСА особенно целесообразно в случае многовариантного доступа к онлайн-ресурсам LMS-системы «Moodle», когда происходит распределение пользователей по различным микросервисам, организующих доступ к разнородным хранилищам данных или СУБД.
При разработке системы МСА определены основные свойства микросервисов, которые необходимо предусмотреть для оптимального функционирования работы СУОМ и СОЗО. Небольшой размер микросервисов позволяет справляться с высокой нагрузкой при использовании сервиса. Независимость сервисов увеличивает надежность информационной системы.