Details

Title Разработка системы сбора, хранения и визуализации данных нагрузочного тестирования: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта»
Creators Булгаков Иван Николаевич
Scientific adviser Петров Александр Владимирович
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects нагрузочное тестирование ; метрики ; java ; js ; k6 ; docker ; ci/cd ; spring boot ; api ; grafana ; load testing ; metrics
Document type Bachelor graduation qualification work
File type PDF
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2025/vr/vr25-1529
Rights Доступ по паролю из сети Интернет (чтение)
Additionally New arrival
Record key ru\spstu\vkr\35846
Record create date 7/30/2025

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Group Anonymous
Network Internet

Данная работа посвящена созданию комплексного решения для автоматизированного сбора, структурирования и наглядного представления метрик нагрузочного тестирования микросервисов облачного гейминга. В рамках работы разработан полнофункциональный микросервис, автоматически принимающий JSON-отчеты из K6 от 14 микросервисов, парсящий метрики и сохраняющий их в PostgreSQL. Обеспечена тесная интеграция с Grafana для интерактивной визуализации: для каждого из 14 микросервисов настроены отдельные дашборды с графиками по каждой из имеющихся метрик при тестировании. Через веб-интерфейс на Thymeleaf + JavaScript реализована гибкая генерация HTML-отчётов за весь период и по последнему прогону, с поддержкой светлой/тёмной темы. При симуляции до 5 000 одновременных подключений время приёма, обработки и отображения новых данных не превышало 3 с. Для повышения надёжности реализованы механизмы повторной отправки данных при сбоях и индикаторы статусов получения. Результат работы оформлен как полнофункциональный API-сервис, сопровождаемый подробной технической документацией, и успешно интегрирован в рабочую среду. Основные выводы были представлены на конференции «Современные технологии в теории и практике программирования», а по итогам исследования подготовлена и опубликована статья в соответствующем сборнике.

This work is dedicated to creating an integrated solution for automated collection, structuring, and clear presentation of load-testing metrics for cloud-gaming microservices. As part of this project, a full-featured microservice was developed that automatically receives JSON reports from K6 for 14 microservices, parses their metrics, and persists them in PostgreSQL. Close integration with Grafana enables interactive visualization: for each of the 14 microservices, separate dashboards were configured with charts for every available metric during testing. A web interface built with Thymeleaf + JavaScript provides flexible generation of HTML reports for the entire period and for the most recent run, with support for both light and dark themes. When simulating up to 5,000 concurrent connections, the time to receive, process, and display new data never exceeded 3 seconds. To enhance reliability, mechanisms for retrying data submissions upon failure and status indicators for receipt confirmations were implemented. The outcome of this work is presented as a fully functional API service, accompanied by detailed technical documentation, and successfully integrated into the production environment. The main findings were presented at the conference “Modern Technologies in Theory and Practice of Programming,” and an article based on the research was prepared and published in the corresponding proceedings.

Network User group Action
ILC SPbPU Local Network All
Read
Internet Authorized users SPbPU
Read
Internet Anonymous

Access count: 0 
Last 30 days: 0

Detailed usage statistics