INFORMATION SECURITY

Comparison between Monolithic and Microservices Architecture in Web Applications Built with Java

  • 1 Faculty of Information Technology, Polytechnic University of Tirana, Albania

Abstract

In today’s times, people demand fast, stable, and reliable applications. Therefore, it is essential to choose the right software architecture before implementing functionalities adopted in the project. The monolithic architecture is implemented as a single unit, integrating all functionalities within a single codebase. In contrast, the microservice architecture decomposes the application into several independent services, each responsible for a specific business logic. Key factors such as scalability, fault tolerance, and data consistency are analyzed. Performance metrics, simplicity, flexibility, and the challenges of implementing and maintaining each architecture are gathered and compared. This study offers valuable insights into the practical implications of choosing between monolithic and microservice architectures, especially in the context of applications. It serves as a comprehensive guide for software developers to make informed decisions when designing scalable and reliable systems.

Keywords

References

  1. Newman, Building Microservices., O’Reilly Media, Inc., (2021)
  2. Momil Seedat, QaisarAbbas Qureshi, Alessia Amelio, Transition Strategies from Monolithic to Microservices Architectures: A Domain-Driven Approach and Case Study. (June 2024) https://www.researchgate.net/publication/381290696_Transitio n_Strategies_from_Monolithic_to_Microservices_Architecture s_A_Domain-Driven_Approach_and_Case_Study
  3. Desiree D. Martinez, Axl Heart P. Remegio, Darllaine R. Lincopinis, A Review on Java Programming Language, (May 2023) https://www.researchgate.net/publication/371166744_A_Revie w_on_Java_Programm ing_Language
  4. J. Fritzsch, J. Bogner, A. Zimmermann, and S. Wagner, “From monolith to microservices: A classification of refactoring approaches,” in Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment: First International Workshop, DEVOPS 2018, Chateau de Villebrumier, France, (March 5-6, 2018)
  5. Nada Salaheddin, Nuredin Ali Salem Ahmed, Microservices vs. Monolithic Architectures: The differential structure between two architectures, (9 Sept 2022) https://www.minarjournal.com/dergi/microservices-vs-monolithic-architectures-thedifferential-structure-between-two-architectures20221202031410.pdfscal
  6. E. Axelsson and E. Karlkvist, “Extracting microservices from a monolithic application,” (2019)
  7. Grzegorz Blinowski, Anna Ojdowska, Adam Przybylek, Monolithic vs. Microservice Architecture: A Performance and Scalability Evaluation, IEEE, (18 February 2022)
  8. C. Richardson, "Microservices-Pattern: Microservice Architecture," (March 2014) http://microservices.io/patterns/microservices.html
  9. Guozhi Liu, Bi Huang, Zhihong Liang, Minmin Qin, Hua Zhou, Zhang Li, Microservices: architecture, container, and challenges, (2020) IEEE 20th International Conference on Software Quality, Reliability and Security Companion (QRS-C) https://qrs20.techconf.org/QRSC2020_FULL/pdfs/QRS-C2020-4QOuHkY3M10ZUl1MoEzYvg/891500a629/891500a629.pdf
  10. Pooyan Jamshidi, Claus Pahl, Nabor C. Mendonça, James Lewis, Microservices: The Journey So Far and Challenges Ahead, IEEE Software,Published by the IEEE Computer Society, (2018) https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=835443 3
  11. A. Furda, C. Fidge, O. Zimmermann, W. Kelly and A. Barros, "Migrating Enterprise Legacy Source Code to Microservices: On Multitenancy, Statefulness, and Data Consistency," in IEEE Software, vol. 35, no. 3, pp. 63-72, (May/June 2018)
  12. Mohit Kumar; Christian Engelmann, Models for Resilience Design Patterns, (2020) https://ieeexplore.ieee.org/document/9306940
  13. Taibi, K. Systä, From monolithic systems to microservices: A decomposition framework based on process mining, (2019), pp. 153–164
  14. Architecting with microservices: A systematic mapping study J. Syst. Softw., 150 (2019), pp. 77-97
  15. Victor Velepucha; Pamela Flores, Monoliths to microservices - Migration Problems and Challenges: A SMS, (23-25 March 2021)
  16. Yalemisew Abgaz; Andrew McCarren; Peter Elger; David Solan; Neil Lapuz; Marin Bivol,Glenn Jackson, Murat Yilmaz, Decomposition of Monolith Applications Into Microservices Architectures: A Systematic Review, pp. 4213 – 4242, (June 2023) https://ieeexplore.ieee.org/document/10160171
  17. Konrad Gos, Wojciech Zabierowski, The Comparison of Microservice and Monolithic Architecture, April 2020 https://www.researchgate.net/publication/341956559_The_Co mparison_of_Microservice_and_Monolithic_Architecture
  18. E Punithavathy, N Priya, Performance of Dynamic Retry Over Static Towards Resilience Nature of Microservice, (June 2024) https://www.researchgate.net/publication/381136184_Perform ance_of_Dynamic_Retry_Over_Static_Towards_Resilience_Nature_of_Microservice
  19. Kapil Bakshi, Microservices-based software architecture and approaches, IEEE, (2017) https://ieeexplore.ieee.org/document/7943959
  20. Muhammad Waseem; Peng Liang; Gastón Márquez; Amleto Di Salle, Testing Microservices Architecture-Based Applications: A Systematic Mapping Study, IEEE, (2020) https://ieeexplore.ieee.org/document/9359275

Article full text

Download PDF