Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи

Microservice oriented application design obtained popularity in the past years. Most researchers investigated some aspects in microservice design for implementing application functionality. Little research considered the core functionality of microservices. This research investigates how to construc...

Full description

Saved in:
Bibliographic Details
Date:2026
Main Authors: Kovalov, Yurii, Boyko, Yuriy
Format: Article
Language:English
Published: The National Technical University of Ukraine "Igor Sikorsky Kyiv Polytechnic Institute" 2026
Subjects:
Online Access:https://journal.iasa.kpi.ua/article/view/358051
Tags: Add Tag
No Tags, Be the first to tag this record!
Journal Title:System research and information technologies
Download file: Pdf

Institution

System research and information technologies
_version_ 1862949217696219136
author Kovalov, Yurii
Boyko, Yuriy
author_facet Kovalov, Yurii
Boyko, Yuriy
author_sort Kovalov, Yurii
baseUrl_str http://journal.iasa.kpi.ua/oai
collection OJS
datestamp_date 2026-04-19T21:53:19Z
description Microservice oriented application design obtained popularity in the past years. Most researchers investigated some aspects in microservice design for implementing application functionality. Little research considered the core functionality of microservices. This research investigates how to construct a microservice communication system by yourself in detail. The results should assist developers and architects to construct their own microservice applications, use less amount of frameworks and therefore prolong overall microservice system life cycle. The standard TCP/IP connection and embedded libraries were used to construct the communication system without using any additional frameworks. As a practical application of this methodology a microservice core system was implemented with a minimum number of microservices to perform performance testing. The measured application layer communication speed turned out to exceed the speed in real application because of database operation limitations. The implemented microservice core system is intended to be used in financial commercial applications as well as in further scientific investigations.
doi_str_mv 10.20535/SRIT.2308-8893.2026.1.02
first_indexed 2026-04-20T01:00:21Z
format Article
fulltext  Y.E. Kovalov, Y.V. Boyko, 2026 20 ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 TIÄC ПРОГРЕСИВНІ ІНФОРМАЦІЙНІ ТЕХНОЛОГІЇ, ВИСОКОПРОДУКТИВНІ КОМП’ЮТЕРНІ СИСТЕМИ UDC 004:415.2 DOI: 10.20535/SRIT.2308-8893.2026.1.02 OPTIMIZING MICROSERVICES DESIGN PATTERN: MAXIMIZING COMMUNICATION SPEED AND PROLONGING APPLICATION LONGEVITY Y.E. KOVALOV, Y.V. BOYKO Abstract. Microservice oriented application design obtained popularity in the past years. Most researchers investigated some aspects in microservice design for im- plementing application functionality. Little research considered the core functionali- ty of microservices. This research investigates how to construct a microservice communication system by yourself in detail. The results should assist developers and architects to construct their own microservice applications, use less amount of frameworks and therefore prolong overall microservice system life cycle. The stand- ard TCP/IP connection and embedded libraries were used to construct the communi- cation system without using any additional frameworks. As a practical application of this methodology a microservice core system was implemented with a minimum number of microservices to perform performance testing. The measured application layer communication speed turned out to exceed the speed in real application be- cause of database operation limitations. The implemented microservice core system is intended to be used in financial commercial applications as well as in further sci- entific investigations. Keywords: microservice, application design, communication speed, domain-driven, monolith application, application life cycle, event, message bus, osi model, delivery guarantee, application layer. INTRODUCTION One of the modern programming design patterns is microservice architecture. It was derived from both service-oriented architecture (SOA) and event-driven architecture (EDA) [1]. Many people have heard of it. Some developers used it. The microservice architecture has something in common with challenges in any other application: how quickly it works, how easy to develop and support, how to integrate different parts together etc. Although some researchers have paid attention to different practical aspects of microservice programming design [2–12], much less research has investigated the core functionality of microservice applications. In this research a practical methodology for creating microservice applications from scratch is represented. First of all, it is a way microservices interact with each other to work as a whole. Past research mostly used standard communication frameworks and technol- ogies. Although they are good for most practical tasks, the lack of developer con- trol may reduce their longevity. In this research the original event delivering sys- tem was created and tested in detail. This approach gives developers full control Optimizing microservices design pattern: maximizing communication speed and… Системні дослідження та інформаційні технології, 2026, № 1 21 for communications as the most important part of the microservice system thus drastically increasing the life cycle of application. The research questions we are supposed to answer in this study are as follows:  What are the main benefits and drawbacks of using applications with mi- croservice design?  What are the main parts of microservice applications?  How to take advantage of microservice design and evade drawbacks?  How to construct a microservices communication system by yourself? This paper has four parts. First it reviews the literature relevant to micro- services design. Then the research methodology is presented and outlines the main parts of microservice application design. In the next step practical results of research are summarized and discussed. The paper concludes with a summary of results and further research. LITERATURE REVIEW There have been many architectural paradigms developed over time in computer systems. Some of these approaches, such as the widely known object-oriented programming, have significantly influenced computer languages. Another, such as structured programming, changed how developers write programs by prioritiz- ing clear structure, improving readability, and making development and mainte- nance easier. Despite their differences, these patterns shared a common goal: to facilitate clearer program structures for human comprehension, thereby stream- lining the software development and maintenance. On the contrary, machine code is straightforward and rudimentary, consist- ing of a sequence of instructions that direct the processor on how to execute tasks. Unlike humans, machines don't rely on structured systems since they possess the capacity to retain every detail. The creation of computer languages, paradigms, and architectures was solely a human endeavor. It reflects human limitations, yet superior comprehension of grammar, particularly in the context of code syntax. One of the most contemporary design patterns is the microservice architec- ture. Growing number of programmers and system architects interact with this technology. Developers engaging with microservices often question why this ap- proach, what drawbacks exist in other technologies, and where to start. Monolith applications A so-called monolith application is a program although it consists of different modules, but they are working in a tight-coupled way. One module could not operate without another or at least there’s a central part of the application on which other parts are intertwined. Often it had a single start point and single data- base to hold information for the entire system. The human brain is an example of such a system in terms the brain has different intertwined tightly coupled parts. No wonder that most legacy applications and computer systems were archi- tected as monoliths, as this architecture was the simplest way to develop. The monolith system has many advantages that should be considered when creating other systems. First of all, it offers a high speed of interaction between its parts because most interlinks are performed using fast memory operations. It also has Y.E. Kovalov, Y.V. Boyko ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 22 no issues with transaction clarity, as it usually has a single database with built-in transaction processing. A well-constructed monolith system can perform better than purely designed microservices architecture. So, before making a decision, let's take into account all the strengths and weaknesses of these architectures. Domain-driven design Domain-driven design (DDD) was first introduced by Eric Evans in his book “Domain-Driven Design: Tackling Complexity in the Heart of Software” [13]. Over time, this approach became a well-known architecture, with many authors providing their perspectives on this design [14]. The point is that large computer systems are usually developed by multiple teams of developers, not just one developer or a single team. This approach ena- bles the quick development of complex applications because each team works simultaneously and independently. DDD can be used in both monolithic and microservice applications [3]. It represents an idea on how to divide large systems into parts. Each team focuses on one part of the system independently. Later the teams stitch it together using one of the integration mechanisms. In this work, some ideas and interpretation of this design were implemented on our way in making the microservice system. Taking advantage of microservice architecture A microservice-driven application was a further development of ideas on how to break down a complex system. Once again, it had something to do with human think- ing. Our society is an example of such a system. Each individual is responsible for themselves and has their own skills and abilities, acting just like a single microservice in an application. Similarly, society can function as a whole because people com- municate with each other and coordinate their efforts to achieve their goals. One of the main goals of the microservice approach is to prolong the longev- ity of an application. Although monolith systems are easier to create, they are much harder to support. People tend to migrate to new technologies, computer languages, frameworks etc. Consequently, the number of developers willing to support legacy applications inevitably decreases over time. As usual, renewing a monolith application means it must be rewritten from scratch. This interrupts the life cycle of old (legacy) applications, even though they may still satisfy all needs. Society wastes time and money by doing this. This issue occurs not only in software development but also throughout our daily lives. Consider a simple object as a fridge. Some people throw it away just because it broke down or has an outdated design. But what if somebody makes a fridge like a Lego set allowing you to repair, upgrade, and change its parts and design as needed? I think this approach will inspire you to keep your fridge indefinitely. With this mindset, society could use our limited resources much more efficiently. Additionally, this approach is crucial for mitigating climate change. Interest in the term “microservice” has grown since 2014 [15]. Many authors have made an effort to clarify what it is and how to work with it [2–6]. Table 1 illustrates how they addressed the challenges of microservice design. Optimizing microservices design pattern: maximizing communication speed and… Системні дослідження та інформаційні технології, 2026, № 1 23 T ab le 1 . M ic ro se rv ic e de sig n ap pr oa ch es Y.E. Kovalov, Y.V. Boyko ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 24 But how to not find yourself lost in this variety of approaches, in other words how to catch a fish in a microservice’s cocktail? This research will find answers to this question. RESEARCH METHODOLOGY When one microservice sends a message to others it may not know recipients. It just emits some mark of its own activity with useful information. So, it is more reasonable to name such an activity as an event. The objective of this research is to create microservice application cores in a step-by-step manner. It includes communication, event format, events routing, database, event delivery, event processing and API gateway. Communication Communication is the imperative part of the microservice application since it re- lates to all microservices. Most applications under investigation used standard communication technology and frameworks (see Table1) such as RestApi for synchronous communication. For asynchronous communication top known meth- ods were Kafka [16] and RabbitMQ [17]. As already mentioned above, monolith applications had an advantage of huge communication speed between the parts of the system. So, it is very im- portant to provide a quick connection between microservices, otherwise it be- comes a bottleneck of our application. Thus, it must be something lightweight and quick. RestApi may be a good choice, but it isn’t lightweight and isn’t quick enough as was concluded during interconnection speed investigation. Of course, it is possible to use one of the open source message systems. But both methods that were mentioned above didn’t guarantee that messages or events would not be duplicated. Additional efforts must be implemented to avoid dupli- cation. Moreover, what if something goes wrong with them? Microservice sys- tems may need some additional functions and don't need others. Maybe future developed microservice would require exact computer language and this open source system would not support it. Moreover, open source communication sys- tems may suffer from a security vulnerability that would affect the whole system. And because it is open source all around would know about that. And finally, the lifecycle of microservice systems and open source systems can be different. You would have a problem if the open source system team stops supporting it. If you want to do something good — do it yourself, especially when it is comparably easy to perform. It’s reasonable to rely on technologies and methods that are supposed to survive longer than our microservice system’s lifetime. Let’s try figuring it out using the Open System Interconnection model (OSI) [18]. This model was developed in 1984 by the International Organization for Standardiza- tion (ISO). Let’s scrutinize this model and try to make the best of it. So, there are seven layers in this model (Fig. 1). The lowest level is Physical, the highest is Application. The lower layer the quicker communication but the harder to write a managed program. The lower three layers are media layers. They deal with hardware and low- level software such as drivers, on-board programs and operating system’s ser- vices. They are way too low for our purposes. But there was something important Optimizing microservices design pattern: maximizing communication speed and… Системні дослідження та інформаційні технології, 2026, № 1 25 we must keep in mind about physical connections – there were duplex connec- tions and usually there were input and output low-level data caches. It means that a communication system must be constructed with embedded support of simulta- neous input and output data flow to maximize performance. Fig. 1. OSI model The upper four layers are host layers. And the lowest in this group (Transport) is good enough for our needs. But that’s just a model. How about practical implementation? TCP/IP model is a more practical implementation of communication suite compared to OSI. It used four layers instead of seven layers in OSI model (Table 2) [19]. Now it is a communication standard supported almost by all devices, systems, operat- ing systems, computer languages etc. It survived for a long time, and is supposed to survive even longer. T a b l e 2 . OSI vs. TCP/IP model OSI TCP/IP Application Application Presentation Session Transport Transport Network Internet Data link Link Physical There were two main protocols on a Transport layer – transport control pro- tocol (TCP) and user datagram protocol (UDP). The UDP protocol is stateless while TCP establishes and holds connections. UDP is quicker but the main disad- vantage, meaning that it was less applicable for our purposes, was that it didn’t track the sequence of data. The messages should be accepted by our receiver mi- croservice exactly in succession they were transmitted. Thus, TCP protocol is best for our application core. Event format It is reasonable to use the message format that most of the computer languages and operating systems are using now and is expected to use in the future. One of the well-known formats that fit this demand is text format. Well-known standard for encoding object information and data interchange in a text form is JavaScript Object Notation (JSON) [20]. It is commonly used in web application programs. Many computer languages have libraries to parse it. Y.E. Kovalov, Y.V. Boyko ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 26 It is not very difficult to write such a library on your own for legacy systems. It has basic types for Number, String, Boolean, Array, Object. From our point of view this format is good enough to be used as an event format, but you can choose any other text format you prefer. Events routing When events are emitting it is not the microservice’s responsibility to know recip- ients. Otherwise, they would be tightly coupled, which is considered as a bad smell for microservices architecture [21]. So, the most reasonable approach is to implement subscriptions and event types (let’s name it EventId). Microservice’s subscriptions should somehow be remembered. Events of specified EventId must be sent to its recipients. As it was concluded the microservice would be implemented for this func- tionality. Let’s name it EventBroker. It works like a delivery system (Fig. 2). Fig. 2. Events routing At the startup EventBroker subscribes itself to receive subscription events (startup record in a subscription table). Every microservice first emits a subscrip- tion event either on the startup or at any time. On receiving, EventBroker fixes this information in the database. From now on all events of that EventId will be forwarding to its subscribers. Fig. 2 portrayed stances in which microservice 1 is an event emitter and microservices 2 and 3 are subscribers for that EventId. Sadly, EventBroker in this architecture is a single point of error, which is considered a bad smell in miscroservice’s design. If EventBroker stops working the whole system will freeze. But let’s keep in mind that there is already a single point of error in any microservice system – network. Everything goes wrong if the network stops working. And EventBroker is an extension of the network with re- sponsibility to deliver events. If the network layout is super resilient and has sev- eral reserved lines it is possible to create several EvenBroker microservices for each line to avoid a single point of error. This would not change our metho- dology. The EventBroker is a central coordinator of all events and simultaneously logs keeper. If something goes wrong in our microservice system – having logs is vital for debugging and moreover it is considered a bad smell if the microservice system doesn’t have a central log keeper. Our goal is to create a microservice sys- tem, not just a bunch of microservices. EventBroker establishes tcp/ip connection with every microservice we have. In order to maximize performance, it must actively use parallel execution tech- Optimizing microservices design pattern: maximizing communication speed and… Системні дослідження та інформаційні технології, 2026, № 1 27 nologies of your favorite computer language. Thus, there are two simultaneously running tasks for each microservice (input and output events processing). Database Every system needs data storage. The microservice system has a lot of microservices that have to be loose coupled. Shared databases in this approach are a way out of line. So, it is imperative for all microservices to have their own database. It is up to developers to choose the database and framework to deal with. It can be Sql, NoSql, object-oriented and so on. Of course, there is no reason for one development team to use different database types in one project. Event delivery guarantee – not less than once, not more than once Communication is commonly used by many microservices, so it is reasonable to build a communication library for each computer language used. There are sever- al reasons that may affect microservice system event delivery. First of all, it is a connection issue and microservice application problem. Connection issues are caused by unstable network connection. If this hap- pens one or several tcp/ip connections between EvenBroker and microservice may interrupt. The communication library must track this somehow and initialize connection renew. The simplest way to implement this functionality is periodic connection testing with small data amounts. Microservice applications may be affected by following: be under the maintenance, in the restart process, hangs up etc. As a result, events suffer from not being delivered at all or being delivered several times. How to mitigate these artifact behaviors? There is no problem at all sending events again and again until the subscriber accepts it. But to avoid duplication every event should be unique and easily iden- tified. And keeping in mind that any microservice (including EventBroker) can be interrupted for reasons mentioned above, the only way to provide this is keeping the event state in our storage – database. Using database transaction technique, it is possible to keep atomicity of database changes even during restart. So, every microservice must have a pool of outgoing and incoming events in the database with a unique id for every outgoing. When a microservice receives an event it first checks against the database if the event with that id already was registered. It registers events in the database if not. It replies to the sender with “Event with this id was received” either after registration or when it was already found in the database (Fig. 3). Fig. 3. Event delivery Y.E. Kovalov, Y.V. Boyko ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 28 Event processing The event delivery approach proposed above is not only about the resilience of the microservice system but also gives the opportunity to perform event pro- cessing atomically. Microservice is like a black box. It is not necessary for you to know how ex- actly it is working unless you send and receive events and understand its struc- ture. But what if something happens in the middle between events being received and sent in other words when events are under processing? In the proposed approach we can put the whole sequence into one transac- tion (Fig. 4). Fig. 4. Event Processing Thus, either during processing the answer will be saved or the database state will be returned to the initial state just after the input event was received. API gateway As was mentioned earlier, RestApi today is the most widely used protocol for web applications. In our microservice architecture it can be used to connect other applica- tions, frontend applications and so on. All we need is just another microservice (name it APIGateway), connected to EventBroker but with specific behavior. APIGateway performs interlink between internal tcp/ip and Rest Api proto- cols adding caching capabilities. It is also a good place for user authentication since other parts of a system could be hidden from the outer world. PRACTICAL RESULTS OF RESEARCH AND DISCUSSION The microservice system was implemented based on the research methodology presented above. It was coded with c# for .net multiplatform program language. Entity framework, System.Net.Sockets library and MySql database were used as helper components. In addition to EventBroker and APIGateway, a test microservice named “Ping” was implemented. With help of these microservices some vital micro- service core parameters were measured. Application layer speed First of all, the application layer speed was measured in isolation without database operations. Using APIGateway we generated an event for Ping microservice. On event arrival Ping microservice generates 50000 messages of specified size addressed to EventBroker. The software measured both times consumed to publish and receive me- ssages. Two computers were used to measure performance with 1 Gigabit per Optimizing microservices design pattern: maximizing communication speed and… Системні дослідження та інформаційні технології, 2026, № 1 29 second network connection between them. First computer, with Ping microservice installed, is equipped with CPU “Intel Core I5-6400 2.7 Ghz” and 8 gigabytes of memory on Windows 10 system. Second, with ApiGateway, EventBroker mi- croservices and MySql has CPU “Intel Core I5-6600K 3.5 Ghz” and 16 gigabytes of memory on Windows 10 system. One thread was used on both publish and re- ceive sides. It turned out the bottleneck in application layer performance was CPU on a publish computer with Ping microservice launched (one CPU kernel was fully engaged). Thus, consumed and published times were identical with few devia- tions, for that reason our graph shows only consumed time transformed to speed without consideration to publish time (Fig. 5). Fig. 5. Application layer speed In addition, the effective consume speed shows that only a part of network connection bandwidth was engaged, as for 1 gigabit per second network theoreti- cal bandwidth limit is about 122000 kilobytes per second (Fig. 5). But as already mentioned above this is because of a CPU bottleneck on a publishing computer. For the most practical cases this speed is more than enough and exceeds per- formance of other universal message brokers already mentioned in paragraph “Communication”. Events processing speed During the next phase let’s add database operations to our experimental environ- ment. The computer hardware configuration is the same as mentioned in a previ- ous step. The results are on Fig. 6. Event size here is 398 bytes. The events flood publisher here is microservice Ping. It generates 100 events and sends them to event receiver EventBroker microservice. How quickly Event- Broker can save to the database was measured. EventBroker can engage multiple threads (c# Task library) to process events. With the number of tasks 4 the maxi- mum saving rate was reached in this configuration. This happens when 100 % CPU usage was registered on EventBroker microservice (number of tasks 4 and 5). Y.E. Kovalov, Y.V. Boyko ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 30 Fig. 6. Database was engaged in speed measurement In the next phase the different event sizes were investigated with the same hard- ware configuration. Number of tasks engaged at EventBroker was fixed to 4 (Fig. 7). Fig. 7. Event size dependence in database engaged configuration If we trace over the graph it is clear that processing speed is almost the same with few deviations until event size 6400 bytes is reached and then it slowly drops down. Thus, for this system architecture it is preferable to generate less amounts of bigger events to increase performance. CONCLUSIONS AND FUTURE WORK The microservice system with direct network connection application level was constructed. In this system special microservice EventBroker was implemented to be in charge of delivering events to other microservices. It also makes sure every microservice receives not less than one event, not more than one event. The event processing speed was measured in isolation without database operations and in real situations with database transactions. The performance of application layer speed without database operations ex- ceeds the universal message broker’s speed even with one CPU engaged and reaches 90000 events per second. It is also possible to perform multithreading events processing for even better results. Optimizing microservices design pattern: maximizing communication speed and… Системні дослідження та інформаційні технології, 2026, № 1 31 The performance in real applications depends on how quickly the database operations are performed. For the experimental part a MySql database was in- volved. It shows a maximum productivity of about 170 events per second in the test environment. Multithreading environment boosts the performance. Thus, in a real environment with powerful servers the high system productivity is expected. Self written microservices communication library gives developers control over application lifetime as the most important part of this design pattern. The goal of the further research may include testing different database types in terms of productivity increasing. Also, the important parts of the microservice application should be investigated such as authentication, authorization. REFERENCES 1. О.О. Petrenko, “A comparison of architecture types of services,” System Research and Information Technologies, no. 4, pp. 48–62, 2015. 2. Wan Yan, Fu Shuai, “Application of Microservice Architecture in Commodity ERP Financial System,” International Journal of Computer Theory and Engineering, vol. 14, no. 4, November 2022, pp. 168–173. doi: 10.7763/IJCTE.2022.V14.1324 3. I Gede Rahmat Wijaya, Ahmad Nurul Fajar, “A Design Study of Microservice Architecture on White Label Travel Platform,” Journal of System and Management Sciences, vol.13, no. 4, pp. 249–264, 2023. doi: 10.33168/JSMS.2023.0415 4. Eman Daraghmi, Cheng-Pu Zhang, Shyan-Ming Yuan, “Enhancing Saga Pattern for Distributed Transactions within a Microservices Architecture,” Applied Sciences (Switzerland), vol. 12, issue 12, June-2 2022, Article number 6242, pp. 1–24. doi: 10.3390/app12126242 5. Juan Arcila-Diaz, Carlos Valdivia, “A Microservice-based Software Architecture for Improving the Availability of Dental Health Records,” International Journal of Computing, vol. 21, issue 4, pp. 475–481, 2022. doi: 10.47839/ijc.21.4.2783 6. John Zaki, S.M. Riazul Islam, Norah Saleh Alghamdi, M. Abdullah-Al-Wadud, Kyung-Sup Kwak, “Introducing Cloud-Assisted Micro-Service-Based Software Development Framework for Healthcare Systems,” IEEE Access, vol. 10, March 22, 2022, pp. 33332–33348. doi: 10.1109/ACCESS.2022.3161455 7. Zhongyi Lu, Declan T. Delaney, David Lillis, “A Survey on Microservices Trust Models for Open Systems,” IEEE Access, vol. 11, March 23, 2023, pp. 28840– 28855. doi: 10.1109/ACCESS.2023.3260147 8. Randa Ahmad Al-Wadi, Adi A. Maaita, “Authentication and Role-Based Micro- service Architecture: A Generic Performance-Centric Design,” Journal of Advances in Information Technology, vol. 14, no. 4, pp. 758–768, 2023. doi: 10.12720/jait.14.4.758-768 9. Ahmet Vedat Tokmak, Akhan Akbulut, Cagatay Catal, “Boosting the visibility of services in microservice architecture,” Cluster Computing, vol. 27, pp. 3099–3111, September 18, 2023. doi: 10.1007/s10586-023-04132-5 10. Iury Araujo, Nuno Antunes, Marco Vieira, “Evaluation of Machine Learning for In- trusion Detection in Microservice Applications,” LADC '23: Proceedings of the 12th Latin-American Symposium on Dependable and Secure Computing, pp. 126– 135, October 17, 2023. doi: 10.1145/3615366.3615375 11. Wesley K.G. Assunção, Jacob Krüger, Sébastien Mosser, Sofiane Selaoui, “How do microservices evolve? An empirical analysis of changes in open-source micro- service repositories,” The Journal of Systems & Software, vol. 204, October 2023, 111788, pp. 1–14. doi: 10.1016/j.jss.2023.111788 12. Francisco Ponce, Jacopo Soldani, Hernán Astudillo, Antonio Brogi, “Smells and Refactorings for Microservices Security: A Multivocal Literature Review,” Journal Y.E. Kovalov, Y.V. Boyko ISSN 1681–6048 System Research & Information Technologies, 2026, № 1 32 of Systems and Software, vol. 192, October 2022, 111393, pp. 1–18. doi: 10.1016/j.jss.2022.111393 13. Eric Evans, Domain-Driven Design: Tackling Complexity in the Heart of Software. Boston: Addison-Wesley, 2004, 501 p. 14. Vaughn Vernon, Domain-Driven Design Distilled. Boston: Addison-Wesley, 2016, 136 p. 15. Victor Velepucha, Pamela Flores, “A Survey on Microservices Architecture Princi- ples, Patterns and Migration Challenges,” IEEE Access, vol. 11, 15 August 2023, pp. 88339–88358. doi: 10.1109/ACCESS.2023.3305687 16. Kafka documentation. Available: https://kafka.apache.org/documentation/ 17. RabbitMQ documentation. Available: https://www.rabbitmq.com/docs/documentation 18. OSI Model. Available: https://www.javatpoint.com/osi-model 19. What is TCP/IP? Available: https://www.techtarget.com/searchnetworking/definition/TCP-IP 20. Introducing JSON. Available: https://www.json.org/json-en.html 21. Tomas Cerny, Amr S. Abdelfattah, Abdullah Al Maruf, Andrea Janes, Davide Taibi, “Catalog and detection techniques of microservice anti-patterns and bad smells: A tertiary study,” The Journal of Systems & Software, 206 (5):111829, December 2023, pp. 2–43. doi: 10.1016/j.jss.2023.111829 Received 17.09.2024 INFORMATION ON THE ARTICLE Yurii E. Kovalov, ORCID: 0009-0002-1649-751X, Taras Shevchenko National University of Kyiv, Ukraine, e-mail: yuk123@meta.ua Yuriy V. Boyko, ORCID: 0000-0003-1417-7424, Taras Shevchenko National University of Kyiv, Ukraine, e-mail: yuriyboyko@knu.ua ОПТИМІЗАЦІЯ ШАБЛОНУ СТВОРЕННЯ МІКРОСЕРВІСІВ: МАКСИМІЗАЦІЯ ШВИДКОСТІ ЗВ’ЯЗКУ ТА ПОДОВЖЕННЯ ЧАСУ ЖИТТЯ СИСТЕМИ / Ю.Е. Ковальов, Ю.В. Бойко Анотація. Останнім часом набуло популярності створення застосунків із ви- користанням технології мікросервісів. Більшість дослідників аналізують мож- ливості цієї технології для реалізації функціонування застосунку. Небагато до- сліджень присвячено функціям ядра функціонування мікросервісної системи. Мета дослідження — детальний розбір можливості самостійної побудови сис- теми зв’язку мікросервісної системи. Результатами дослідження можуть ско- ристатися розробники й архітектори програмного забезпечення для побудови своїх мікросервісних систем таким чином, щоб у них задіювалася менша кіль- кість програмних шаблонів, таким чином збільшуючи життєвий цикл системи. Комунікаційну систему побудовано на базі стандартного TCP/IP з’єднання та вбудованих бібліотек для роботи із ним без використання додаткових програ- мних шаблонів. Як приклад практичного використання цієї методології розро- блено ядро мікросервісної системи із мінімальною кількістю мікросервісів, не- обхідних для перевірки швидкості роботи. Як виявилося, виміряна швидкість зв’язку рівня застосунку перевищує швидкість у реальній ситуації через обме- ження швидкості роботи із базою даних. Заплановано використати реалізоване ядро мікросервісної системи для розроблення комерційних фінансових засто- сунків та у ході проведення подальших досліджень. Ключові слова: мікросервіс, архітектура програми, швидкість з’єднання, домен-орієнтований, монолітний застосунок, життєвий цикл програми, подія, шина повідомлень, модель osi, гарантування доставки, рівень застосунку.
id journaliasakpiua-article-358051
institution System research and information technologies
keywords_txt_mv keywords
language English
last_indexed 2026-04-20T01:00:21Z
publishDate 2026
publisher The National Technical University of Ukraine "Igor Sikorsky Kyiv Polytechnic Institute"
record_format ojs
resource_txt_mv journaliasakpiua/c3/f406c429133338f7b355bf98570942c3.pdf
spelling journaliasakpiua-article-3580512026-04-19T21:53:19Z Optimizing microservices design pattern: maximizing communication speed and prolonging application longevity Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи Kovalov, Yurii Boyko, Yuriy microservice application design communication speed domain-driven monolith application application life cycle event message bus osi model delivery guarantee application layer мікросервіс архітектура програми швидкість з’єднання домен-орієнтований монолітний застосунок життєвий цикл програми подія шина повідомлень модель osi гарантування доставки рівень застосунку Microservice oriented application design obtained popularity in the past years. Most researchers investigated some aspects in microservice design for implementing application functionality. Little research considered the core functionality of microservices. This research investigates how to construct a microservice communication system by yourself in detail. The results should assist developers and architects to construct their own microservice applications, use less amount of frameworks and therefore prolong overall microservice system life cycle. The standard TCP/IP connection and embedded libraries were used to construct the communication system without using any additional frameworks. As a practical application of this methodology a microservice core system was implemented with a minimum number of microservices to perform performance testing. The measured application layer communication speed turned out to exceed the speed in real application because of database operation limitations. The implemented microservice core system is intended to be used in financial commercial applications as well as in further scientific investigations. Останнім часом набуло популярності створення застосунків із використанням технології мікросервісів. Більшість дослідників аналізують можливості цієї технології для реалізації функціонування застосунку. Небагато досліджень присвячено функціям ядра функціонування мікросервісної системи. Мета дослідження — детальний розбір можливості самостійної побудови системи зв’язку мікросервісної системи. Результатами дослідження можуть скористатися розробники й архітектори програмного забезпечення для побудови своїх мікросервісних систем таким чином, щоб у них задіювалася менша кількість програмних шаблонів, таким чином збільшуючи життєвий цикл системи. Комунікаційну систему побудовано на базі стандартного TCP/IP з’єднання та вбудованих бібліотек для роботи із ним без використання додаткових програмних шаблонів. Як приклад практичного використання цієї методології розроблено ядро мікросервісної системи із мінімальною кількістю мікросервісів, необхідних для перевірки швидкості роботи. Як виявилося, виміряна швидкість зв’язку рівня застосунку перевищує швидкість у реальній ситуації через обмеження швидкості роботи із базою даних. Заплановано використати реалізоване ядро мікросервісної системи для розроблення комерційних фінансових застосунків та у ході проведення подальших досліджень. The National Technical University of Ukraine "Igor Sikorsky Kyiv Polytechnic Institute" 2026-03-31 Article Article application/pdf https://journal.iasa.kpi.ua/article/view/358051 10.20535/SRIT.2308-8893.2026.1.02 System research and information technologies; No. 1 (2026); 20-32 Системные исследования и информационные технологии; № 1 (2026); 20-32 Системні дослідження та інформаційні технології; № 1 (2026); 20-32 2308-8893 1681-6048 en https://journal.iasa.kpi.ua/article/view/358051/343990
spellingShingle мікросервіс
архітектура програми
швидкість з’єднання
домен-орієнтований
монолітний застосунок
життєвий цикл програми
подія
шина повідомлень
модель osi
гарантування доставки
рівень застосунку
Kovalov, Yurii
Boyko, Yuriy
Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
title Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
title_alt Optimizing microservices design pattern: maximizing communication speed and prolonging application longevity
title_full Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
title_fullStr Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
title_full_unstemmed Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
title_short Оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
title_sort оптимізація шаблону створення мікросервісів: максимізація швидкості зв’язку та подовження часу життя системи
topic мікросервіс
архітектура програми
швидкість з’єднання
домен-орієнтований
монолітний застосунок
життєвий цикл програми
подія
шина повідомлень
модель osi
гарантування доставки
рівень застосунку
topic_facet microservice
application design
communication speed
domain-driven
monolith application
application life cycle
event
message bus
osi model
delivery
guarantee
application layer
мікросервіс
архітектура програми
швидкість з’єднання
домен-орієнтований
монолітний застосунок
життєвий цикл програми
подія
шина повідомлень
модель osi
гарантування доставки
рівень застосунку
url https://journal.iasa.kpi.ua/article/view/358051
work_keys_str_mv AT kovalovyurii optimizingmicroservicesdesignpatternmaximizingcommunicationspeedandprolongingapplicationlongevity
AT boykoyuriy optimizingmicroservicesdesignpatternmaximizingcommunicationspeedandprolongingapplicationlongevity
AT kovalovyurii optimízacíâšablonustvorennâmíkroservísívmaksimízacíâšvidkostízvâzkutapodovžennâčasužittâsistemi
AT boykoyuriy optimízacíâšablonustvorennâmíkroservísívmaksimízacíâšvidkostízvâzkutapodovžennâčasužittâsistemi