MICROSERVICES ARCHITECTURE: A THEORETICAL ANALYSIS OF DESIGN PRINCIPLES AND CHALLENGES
Keywords:
Microservices architecture, software design, service decomposition, inter-service communication, scalability, system resilienceAbstract
Microservices architecture (MSA) is a software design approach that structures an application as a collection of loosely coupled services, each responsible for a specific business function. This paper presents a theoretical analysis of microservices architecture, exploring its foundational principles, design patterns, and the challenges it poses for software development. We examine key concepts such as service decomposition, inter-service communication, and scalability. The paper also discusses the trade-offs associated with microservices, particularly in terms of complexity, data consistency, and system resilience. By providing a comprehensive understanding of the microservices architecture, this paper aims to guide software architects and developers in making informed decisions when adopting this architectural style.
References
Fowler, M., & Lewis, J. (2014). Microservices: A Definition of This New Architectural Term. martinfowler.com.
Newman, S. (2015). Building Microservices: Designing Fine-Grained Systems. O'Reilly Media.
Richardson, C. (2018). Microservices Patterns: With Examples in Java. Manning Publications.
Bonér, J., Farley, D., Kuhn, R., & Thompson, M. (2014). The Reactive Manifesto. reactivemanifesto.org.
Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L. (2017). Microservices: Yesterday, Today, and Tomorrow. Present and Ulterior Software Engineering, 195-216.
Taibi, D., Sillitti, A., & Janes, A. (2017). Microservices in Agile Software Development: A Workshop-Based Study into Issues, Advantages, and Disadvantages. Proceedings of the XP2017 Scientific Workshops, 1-5.
Thönes, J. (2015). Microservices. IEEE Software, 32(1), 116-116.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2024 COMPUSOFT: An International Journal of Advanced Computer Technology
This work is licensed under a Creative Commons Attribution 4.0 International License.
©2023. COMPUSOFT: AN INTERNATIONAL OF ADVANCED COMPUTER TECHNOLOGY by COMPUSOFT PUBLICATION is licensed under a Creative Commons Attribution 4.0 International License. Based on a work at COMPUSOFT: AN INTERNATIONAL OF ADVANCED COMPUTER TECHNOLOGY. Permissions beyond the scope of this license may be available at Creative Commons Attribution 4.0 International Public License.