Адаптивна бібліотека для проксі-сервлетів
Дата
2025
Науковий керівник
Назва журналу
Номер ISSN
Назва тому
Видавець
КПІ ім. Ігоря Сікорського
Анотація
Розмір пояснювальної записки – 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 р.
Опис
Ключові слова
проксі-сервлети, HTTP-проксування, мікросервісна архітектура, адаптивна бібліотека, Java, відмовостійкість, маршрутизація запитів, API Gateway, proxy servlets, HTTP-proxying, microservices architecture, adaptive library, fault tolerance, request routing
Бібліографічний опис
Шекера, М. О. Адаптивна бібліотека для проксі-сервлетів : магістерська дис. : 121 Інженерія програмного забезпечення / Шекера Михайло Олександрович. - Київ, 2025. - 146 с.