Details
| Title | Разработка отказоустойчивой микросервисной архитектуры для нагруженного веб-сервиса: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта» = Development of a Fault-Tolerant Microservice Architecture for a High-Load Web Service |
|---|---|
| Creators | Джичко Андрей Олегович |
| Scientific adviser | Шемякин Илья Александрович |
| Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Imprint | Санкт-Петербург, 2026 |
| Collection | Выпускные квалификационные работы ; Общая коллекция |
| Subjects | отказоустойчивость ; наблюдаемость ; микросервисная архитектура ; circuit breaker ; transactional outbox ; малая команда разработки ; fault tolerance ; observability ; microservice architecture ; small development team |
| Document type | Bachelor graduation qualification work |
| Language | Russian |
| Level of education | Bachelor |
| Speciality code (FGOS) | 09.03.04 |
| Speciality group (FGOS) | 090000 - Информатика и вычислительная техника |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-3480 |
| Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
| Additionally | New arrival |
| Record key | ru\spstu\vkr\42673 |
| Record create date | 8/21/2026 |
Allowed Actions
–
Action 'Read' will be available if you login or access site from another network
Action 'Download' will be available if you login or access site from another network
| Group | Anonymous |
|---|---|
| Network | Internet |
Целью работы является повышение отказоустойчивости и наблюдаемости веб-сервиса путём модернизации его гибридной микросервисной архитектуры с использованием инструментов, отобранных и скомбинированных с учётом ресурсов малой команды разработки. В ходе работы проведён анализ моделей межсервисного взаимодействия, угроз отказоустойчивости, существующих защитных паттернов, а также опыта их применения. На основе проведенного анализа выбран технологический стек: Resilience4j для защиты синхронных HTTP-вызовов, паттерны Transactional Outbox, Idempotent Consumer и Dead Letter Exchange для асинхронной шины RabbitMQ, а также стек наблюдаемости (Prometheus, Grafana, OpenTelemetry, Jaeger). Далее с использованием предложенных механизмов была спроектирована и реализована обновлённая архитектура прототипа социальной сети. Тестирование подтвердило эффективность внедрённых решений. При нагрузочном тестировании пропускная способность выросла более чем в четыре раза, доля ошибок снизилась с 25,9 % до 0,21 %, а среднее время ответа сократилось с 5 003 до 880 мс. Результатом работы является обновлённая архитектура социальной сети. Предложенные решения могут быть использованы малыми командами разработки при построении отказоустойчивых высоконагруженных систем.
The aim of the work is to improve the fault tolerance and observability of a web service by refactoring its hybrid microservice architecture using tools selected and combined according to the resources of a small development team. During the work, an analysis of inter-service interaction models, fault tolerance threats, existing protection patterns and their application experience was carried out. Based on the analysis, a technology stack was selected: Resilience4j for protecting synchronous HTTP calls, the Transactional Outbox, Idempotent Consumer and Dead Letter Exchange patterns for the RabbitMQ asynchronous bus, and an observability stack (Prometheus, Grafana, OpenTelemetry, Jaeger). Then, using the proposed mechanisms, an updated architecture of a social network prototype was designed and implemented. Testing confirmed the effectiveness of the implemented solutions. Under load testing, throughput increased more than four times, the error rate dropped from 25.9% to 0.21%, and the average response time decreased from 5,003 ms to 880 ms. The result of the work is an updated architecture of the social network. The proposed solutions can be used by small development teams when building fault-tolerant high-load systems.
| Network | User group | Action |
|---|---|---|
| ILC SPbPU Local Network | All |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|