Адаптивна бібліотека для проксі-сервлетів

dc.contributor.advisorЗенів, Ірина Онуфріївна
dc.contributor.authorШекера, Михайло Олександрович
dc.date.accessioned2026-04-07T07:44:14Z
dc.date.available2026-04-07T07:44:14Z
dc.date.issued2025
dc.description.abstractРозмір пояснювальної записки – 146 аркушів, містить 7 ілюстрацій, 14 таблиць, 30 лістингів коду та 29 посилань на джерела. Актуальність теми. Перехід від монолітних до мікросервісних архітектур створив нові виклики в організації комунікації між сервісами. Існуючі рішення для проксування HTTP-запитів у Java-екосистемі мають суттєві обмеження: жорстку прив'язку до конкретної інфраструктури (Eclipse Jetty ProxyServlet), надмірну складність налаштування та залежність від фреймворків (Netflix Zuul), обмежену функціональність базових можливостей (Charon Spring Reverse Proxy). Виявлено потребу в розробці адаптивної бібліотеки, яка поєднує гнучкість архітектури з простотою використання та забезпечує незалежність від конкретних реалізацій HTTP-клієнтів. Мета дослідження. Основною метою дослідження є вдосконалення процесу інтеграції прикладних програм із шлюзом API (API Gateway) шляхом створення легковісної бібліотеки, яка вирішує проблему складності налаштування та підтримки безпечної комунікації між мікросервісами та зовнішніми клієнтами через централізовану точку входу на базі серверних технологій. Об'єкт дослідження: процеси проксування HTTP-запитів у розподілених Java-системах. Предмет дослідження: методи та архітектурні рішення для реалізації динамічної маршрутизації, модифікації запитів та механізмів стійкості в контексті Java Servlet API. Для реалізації поставленої мети сформульовані наступні завдання: − провести аналіз існуючих архітектурних підходів до проксування HTTP запитів та виявити обмеження наявних технічних рішень; − розробити метод адаптивного проксування з модульною архітектурою, що забезпечує незалежність від конкретних реалізацій HTTP-клієнтів; − створити адаптивну бібліотеку для проксі-сервлетів з підтримкою гнучкої маршрутизації, механізмів відмовостійкості та оптимізації продуктивності; − розробити засоби інтеграції бібліотеки з популярними Java-фреймворками та середовищами розгортання. Наукова новизна результатів магістерської дисертації полягає в тому, що набув подальшого розвитку метод адаптивного проксування HTTP-запитів через застосування модульної архітектури з абстракцією клієнтів протоколу, що на відміну від існуючих підходів (Eclipse Jetty ProxyServlet, Netflix Zuul, Spring Cloud Gateway) забезпечує незалежність від конкретних реалізацій HTTP-клієнтів та дозволяє динамічно обирати оптимальну реалізацію залежно від вимог до продуктивності та відмовостійкості системи. Результат досягнутий шляхом розробки системи абстракції HTTP-клієнтів, математичної моделі маршрутизації та механізмів забезпечення відмовостійкості. Практичне значення отриманих результатів полягає в тому, що розроблено адаптивну бібліотеку для проксі-сервлетів у вигляді програмного забезпечення з відкритим вихідним кодом, що включає: модульну архітектуру з підтримкою множинних HTTP-клієнтів (Apache HttpClient, OkHttp, Java HTTP Client); гнучку систему маршрутизації з підтримкою правил на основі шляхів, заголовків та методів HTTP; механізми забезпечення відмовостійкості (Circuit Breaker, Retry Pattern, Fallback); засоби оптимізації продуктивності (Connection Pooling, асинхронна обробка, багаторівневе кешування); інтеграцію зі Spring Boot. Бібліотека може використовуватись як основа для побудови API Gateway, проксі сервісів та інтеграційних шлюзів у мікросервісних архітектурах. Експериментальні вимірювання демонструють здатність системи обробляти понад 10 000 запитів на секунду при типових конфігураціях апаратного забезпечення. Зв'язок з науковими програмами, планами, темами. Робота виконувалась на кафедрі інформатики та програмної інженерії Національного технічного університету України "Київський політехнічний інститут імені Ігоря Сікорського". Апробація. Наукові положення дисертації пройшли апробацію на IX Міжнародній науково-практичній конференції молодих вчених та студентів «Інженерія програмного забезпечення і передові інформаційні технології» (SoftTech-2025) – м. Київ, листопад 2025 р. Публікації. Наукові положення дисертації опубліковані в: 1. Шекера М.O. Адаптивна бібліотека для проксі-сервлетів / М.O. Шекера, І.O. Зенів // Матеріали IX Міжнародної науково-практичної конференції молодих вчених та студентів «Інженерія програмного забезпечення і передові інформаційні технології» (SoftTech-2025)– м. Київ: НТУУ «КПІ ім. Ігоря Сікорського», листопад 2025 р.
dc.description.abstractotherMaster's thesis: 146 pages, 7 figures, 14 tables, 30 code samples, 29 references. Relevance of the topic. The transition from monolithic to microservices architectures has created new challenges in organizing inter-service communication. Existing solutions for HTTP request proxying in the Java ecosystem have significant limitations: tight coupling to specific infrastructure (Eclipse Jetty ProxyServlet), excessive configuration complexity and framework dependencies (Netflix Zuul), limited functionality of basic capabilities (Charon Spring Reverse Proxy). The need for developing an adaptive library that combines architectural flexibility with ease of use and ensures independence from specific HTTP client implementations has been identified. Research objective. The main objective is to increase adaptability and reduce the complexity of integrating proxy components into Java applications by developing a modular library with support for multiple HTTP clients, extensible routing mechanisms, and built-in fault tolerance measures. Object of research: HTTP request proxying processes in distributed Java systems. Subject of research: methods and tools for building adaptive proxy components for microservices architectures. To achieve this objective, the following tasks were formulated: − analyze existing architectural approaches to HTTP request proxying and identify limitations of available technical solutions; − develop an adaptive proxying method with modular architecture that ensures independence from specific HTTP client implementations; − create an adaptive library for proxy servlets with support for flexible routing, fault tolerance mechanisms, and performance optimization; − develop means of integrating the library with popular Java frameworks and deployment environments. Scientific novelty of the master's thesis results lies in the further development of the adaptive HTTP request proxying method through the application of modular architecture with protocol client abstraction, which, unlike existing approaches (Eclipse Jetty ProxyServlet, Netflix Zuul, Spring Cloud Gateway), ensures independence from specific HTTP client implementations and allows dynamic selection of optimal implementation depending on system performance and fault tolerance requirements. The result was achieved through the development of an HTTP client abstraction system, mathematical routing model, and fault tolerance mechanisms. Practical significance of the obtained results lies in the development of an adaptive library for proxy servlets as open-source software, including: modular architecture with support for multiple HTTP clients (Apache HttpClient, OkHttp, Java HTTP Client); flexible routing system with support for rules based on paths, headers, and HTTP methods; fault tolerance mechanisms (Circuit Breaker, Retry Pattern, Fallback); performance optimization tools (Connection Pooling, asynchronous processing, multi-level caching); integration with Spring Boot through a starter module; standalone operation mode with embedded servlet container. The library can be used as a foundation for building API Gateways, proxy services, and integration gateways in microservices architectures. Experimental measurements demonstrate the system's ability to process over 10,000 requests per second with typical hardware configurations. Connection with scientific programs, plans, themes. The work was carried out at the Department of Computer Science and Software Engineering of the National Technical University of Ukraine "Igor Sikorsky Kyiv Polytechnic Institute". Approbation. The scientific provisions of the dissertation were tested at the IX International Scientific and Practical Conference of Young Scientists and Students "Software Engineering and Advanced Information Technologies" (SoftTech-2025) – Kyiv, November 2025. Publications. The scientific provisions of the dissertation are published in: 1. Shekera M.O. Adaptive Library for Proxy Servlets / M.O. Shekera, I.O. Zeniv // Proceedings of the IX International Scientific and Practical Conference of Young Scientists and Students "Software Engineering and Advanced Information Technologies" (SoftTech-2025) – Kyiv: NTUU "Igor Sikorsky KPI", November 2025.
dc.format.extent146 с.
dc.identifier.citationШекера, М. О. Адаптивна бібліотека для проксі-сервлетів : магістерська дис. : 121 Інженерія програмного забезпечення / Шекера Михайло Олександрович. - Київ, 2025. - 146 с.
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/79994
dc.language.isouk
dc.publisherКПІ ім. Ігоря Сікорського
dc.publisher.placeКиїв
dc.subjectпроксі-сервлети
dc.subjectHTTP-проксування
dc.subjectмікросервісна архітектура
dc.subjectадаптивна бібліотека
dc.subjectJava
dc.subjectвідмовостійкість
dc.subjectмаршрутизація запитів
dc.subjectAPI Gateway
dc.subjectproxy servlets
dc.subjectHTTP-proxying
dc.subjectmicroservices architecture
dc.subjectadaptive library
dc.subjectfault tolerance
dc.subjectrequest routing
dc.subject.udc004.438:004.771
dc.titleАдаптивна бібліотека для проксі-сервлетів
dc.title.alternativeAdaptive Library for Proxy Servlets
dc.typeMaster Thesis

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
Shekera_magistr.pdf
Розмір:
1.95 MB
Формат:
Adobe Portable Document Format
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
8.98 KB
Формат:
Item-specific license agreed upon to submission
Опис: