СТВОРЕННЯ ІНСТРУМЕНТАРІЮ ДЛЯ СПРОЩЕННЯ ПОБУДОВИ МІКРОСЕРВІСНИХ ДОДАТКІВ
DOI: 10.31673/2412-4338.2024.014555
Анотація
Предметом дослідження цієї статі є мікросервісна архітектура та її сучасний стан розвитку. Метою цієї статті є розробка графічного інструментарію проектування структури мікросервісних додатків, який б значно полегшував створення такого програмного забезпечення, минаючи основні проблеми, які породжуються при неправильному застосуванні цієї архітектури.
Основними задачами було категоризувати існуючі шаблони проектування мікросервісної архітектури, виділити критично важливі групи та розглянути конкретні шаблони з цих груп. Наступним кроком була інтеграція цих шаблонів в створений графічний інструментарій. Кінцевою задачею було тестування створеного інструментарію та перевірка його працездатності на прикладі медичної системи з використанням предметно-орієнтовного підходу до створення програмного забезпечення. В результаті виконання поставлених задач було розроблено графічний інструментарій проектування структури мікросервісних додатків, який частково автоматизує процес створення програмного забезпечення завдяки наданню широкого набору інструментів, які вирішують такі задачі, як забезпечення виявлення, безпеки, комунікації, взаємодії та спостережуваності мікросервісів.
Наукова новизна цієї роботи полягає у тому, що подібного комплексного рішення для побудови мікросервісних додатків на ринку не існує на даний момент. При цьому, актуальність створеного графічного інструментарію висока, так як мікросервісна архітектура знаходить все більше прихильників серед розробників програмного забезпечення завдяки перевагам, які вона надає. Але ці переваги досягаються лише при правильній інтеграції цієї архітектури у додаток, тому існує потреба в інструментах, які беруть на себе частину цієї роботи та реалізують її правильним чином. Створений інструментарій генерує структуру мікросервісного додатку на мові програмування JavaScript та платформі NodeJS.
Ключові слова: мікросервісна архітектура, шаблони проектування, графічний інструментарій, предметно-орієнтований підхід, виявлення мікросервісів.
Список використаної літератури
1. Taibi D., Lenarduzzi V., Pahl K. Architectural Patterns for Microservices: a Systematic Mapping Study, 8th International Conference on Cloud Computing and Services Science. 2018.
2. Jamshidi P., Lewis J., Tilkov S. Microservices: The Journey So Far and Challenges Ahead. IEEE SUSTAINABLE COMPUTING. 2020.
3. Waseem M., Liang P., Shahin M. Design, monitoring, and testing of microservices systems: The practitioners’ perspective. Journal of Systems and Software. Vol. 182. 2021.
4. Ponce F., Márquez G. Migrating from monolithic architecture to microservices: A Rapid Review. 2019 38th International Conference of the Chilean Computer Science Society (SCCC). 2019.
5. Tyszberowicz S. Identifying Microservices Using Functional Decomposition. LNPSE, Vol. 10998. 2018.
6. Hannousse A., Yahiouche S. Securing microservices and microservice architectures: A systematic mapping study. Computer Science Review, Vol. 41. 2021.
7. Niu Y. Load Balancing Across Microservices. IEEE INFOCOM 2018 - IEEE Conference on Computer Communications. 2018.
8. Zhongshan R., Wei W. Migrating Web Applications from Monolithic Structure to Microservices Architecture. Internetware '18: Proceedings of the Tenth Asia-Pacific Symposium on Internetware. 2018. P. 1–10.
9. Bucchiarone A., Dragoni N. From Monolithic to Microservices: An Experience Report from the Banking Domain. IEEE Software. Vol. 35. 2018. P. 50–55.
10. Rossi F. Hierarchical Scaling of Microservices in Kubernetes. 2020 IEEE International Conference on Autonomic Computing and Self-Organizing Systems (ACSOS). 2020.