Система управління високонавантаженими розподіленими сервісами на основі подієво-орієнтованої архітектури
Loading...
Date
2025
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Державний університет «Київський авіаційний інститут»
Abstract
Об’єкт дослідження – високонавантажена розподілена програмна система, що функціонує у середовищі мікросервісної та подієво-орієнтованої архітектури.
Предмет дослідження – принципи побудови подієво-орієнтованих мікросервісних систем, методи забезпечення їх масштабованості, надійності, узгодженості даних, а також засоби моніторингу, логування та автоматизації розгортання в контейнеризованих середовищах.
Мета роботи – розробка системи управління високонавантаженими розподіленими сервісами на основі подієво-орієнтованої архітектури, яка забезпечує масштабованість, відмовостійкість та ефективну взаємодію між компонентами.
Технічні та програмні засоби – мова програмування Java, фреймворк Spring Boot, Spring Security, JWT, Spring Data JPA, брокер повідомлень Apache Kafka, система керування базами даних PostgreSQL, система контейнеризації Docker, система управління проєктами Maven, інструменти моніторингу Prometheus і Grafana, Apache JMeter для навантажувального тестування.
Основні характеристики та показники – система складається з п’яти незалежних мікросервісів (User, Product, Order, Payment, Notification), що взаємодіють через подієво-орієнтований механізм на основі Kafka; кожен сервіс працює з окремою базою даних; забезпечується горизонтальне масштабування; реалізовано автентифікацію та авторизацію на основі JWT; налаштовано агрегований моніторинг метрик, логування сервісів та збір статистики навантаження. Система витримує пікове навантаження більше 10 000 запитів відповідно до сценаріїв JMeter.
Отримані результати та їх новизна – реалізовано повноцінну мікросервісну екосистему з подієвою взаємодією, яка демонструє високу продуктивність завдяки використанню неблокуючих асинхронних механізмів обміну подіями. Створено масштабовану архітектуру з розділенням бізнес-логіки, що дозволяє незалежно оновлювати та розгортати сервіси. Налаштовано централізований моніторинг, що забезпечує оперативний аналіз продуктивності та стабільності системи. Новизна полягає в інтеграції сучасних практик розробки з практичним застосуванням під час побудови високонавантаженої екосистеми з урахуванням вимог до надійності та відмовостійкості.
Рекомендації щодо використання результатів – отримані результати можуть застосовуватися при побудові комерційних систем електронної комерції, аналітичних сервісів, платформ з високими вимогами до продуктивності та масштабованості. Архітектурні підходи та розроблені механізми можуть бути використані для створення гнучких мікросервісних інфраструктур у корпоративних рішеннях, а також як навчальний матеріал для підготовки фахівців з розподілених систем та DevOps-практик.
Object of research – a high-load distributed software system operating within a microservice and event-driven architecture environment. Subject of research – principles of designing event-driven microservice systems, methods of ensuring their scalability, reliability, data consistency, and tools for monitoring, logging, and automated deployment in containerized environments. Purpose of the work – development of a management system for high-load distributed services based on event-driven architecture that ensures scalability, fault tolerance, and efficient interaction between components. Technical and software tools – Java programming language, Spring Boot framework, Spring Security, JWT authentication, Spring Data JPA, Apache Kafka message broker, PostgreSQL relational database system, Docker containerization platform, Maven build system, Prometheus and Grafana monitoring tools, and Apache JMeter for load testing. Key characteristics and indicators – the system consists of five independent microservices (User, Product, Order, Payment, Notification), communicating via an event-driven mechanism built on Kafka; each service uses an isolated database; horizontal scaling is supported; JWT-based authentication and authorization are implemented; centralized monitoring and logging are configured to collect metrics and performance data. The system can withstand peak loads of more than 10,000 requests according to JMeter scripts. Results obtained and their novelty – a fully functional microservice ecosystem with event-driven communication has been developed, demonstrating high performance through asynchronous, non-blocking message processing. A scalable architecture with clearly separated business logic allows independent deployment and updates of services. A centralized monitoring system has been configured, enabling real-time performance tracking and system stability assessment. The novelty of the work lies in the integration of modern architectural and DevOps practices into the development of a high-load distributed system with strict requirements for reliability, resilience, and efficiency. Recommendations for the practical use of results – the developed approaches can be applied in commercial e-commerce systems, data analytics platforms, and other solutions requiring scalability and high availability. The architectural principles and implemented mechanisms can be used to build flexible microservice infrastructures in enterprise environments as well as serve as educational material for training specialists in distributed systems, microservices, and DevOps practices.
Object of research – a high-load distributed software system operating within a microservice and event-driven architecture environment. Subject of research – principles of designing event-driven microservice systems, methods of ensuring their scalability, reliability, data consistency, and tools for monitoring, logging, and automated deployment in containerized environments. Purpose of the work – development of a management system for high-load distributed services based on event-driven architecture that ensures scalability, fault tolerance, and efficient interaction between components. Technical and software tools – Java programming language, Spring Boot framework, Spring Security, JWT authentication, Spring Data JPA, Apache Kafka message broker, PostgreSQL relational database system, Docker containerization platform, Maven build system, Prometheus and Grafana monitoring tools, and Apache JMeter for load testing. Key characteristics and indicators – the system consists of five independent microservices (User, Product, Order, Payment, Notification), communicating via an event-driven mechanism built on Kafka; each service uses an isolated database; horizontal scaling is supported; JWT-based authentication and authorization are implemented; centralized monitoring and logging are configured to collect metrics and performance data. The system can withstand peak loads of more than 10,000 requests according to JMeter scripts. Results obtained and their novelty – a fully functional microservice ecosystem with event-driven communication has been developed, demonstrating high performance through asynchronous, non-blocking message processing. A scalable architecture with clearly separated business logic allows independent deployment and updates of services. A centralized monitoring system has been configured, enabling real-time performance tracking and system stability assessment. The novelty of the work lies in the integration of modern architectural and DevOps practices into the development of a high-load distributed system with strict requirements for reliability, resilience, and efficiency. Recommendations for the practical use of results – the developed approaches can be applied in commercial e-commerce systems, data analytics platforms, and other solutions requiring scalability and high availability. The architectural principles and implemented mechanisms can be used to build flexible microservice infrastructures in enterprise environments as well as serve as educational material for training specialists in distributed systems, microservices, and DevOps practices.
Description
Робота публікується згідно наказу ректора Університету від 27.05.2021 р. №311/од «Про розміщення кваліфікаційних робіт здобувачів вищої освіти в репозиторії університету». Науковий керівник: Телешко Ігор Васильович
Keywords
кваліфікаційна робота, розподілені системи, мікросервісна архітектура, високонавантажені системи, prometheus, подієво-орієнтована взаємодія, qualification work, distributed systems, microservice architecture, apache kafka, highly loaded systems, docker, prometheus, grafana, jwt, event-oriented interaction
Citation
Рехман Д. Система управління високонавантаженими розподіленими сервісами на основі подієво-орієнтованої архітектури. - Кваліфікаційна робота на здобуття освітнього ступеня магістр. – Київ, КАІ, 2025. - 95 с.