From Microservice to Monolith: A Multivocal Literature Review †
Abstract
:1. Introduction
2. Methodology
2.1. Goals and Research Questions
- . What are the reasons for switching back from microservice to monolith?
- . What are the key aspects to pay attention to during the switching back process?
- . What are the opinions of the other practitioners regarding such switching back?
2.2. Search Strategy
“(microservice* OR micro-service* OR “micro service*”)” |
AND |
monolith* |
AND |
“(back OR return* OR refactor* OR rearchitect* OR migrat* OR revert* OR re-architect* OR redesign* OR reimplementation*)” |
2.2.1. White Literature
2.2.2. Grey Literature
2.3. Data Extraction
2.4. Replicability
3. Results
3.1. RQ1: What Are the Reasons for Switching BACK from Microservice to Monolith?
3.2. RQ2: What Are the Key Aspects to Pay Attention to during the Switching Back Process?
3.3. RQ3: What Are the Opinions of the Other Practitioners Regarding Such Switching Back?
4. Discussion
4.1. Interconnected Relations and Thoughts between RQs
4.2. Implications and Significance
4.3. Study Limitations
4.4. Future Work
5. Threats to Validity
5.1. Study Selection Validity
5.2. Data Validity
5.3. Research Validity
6. Related Work
7. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Esparza-Peidro, J.; Muñoz-Escoí, F.D.; Bernabéu-Aubán, J.M. Modeling microservice architectures. J. Syst. Softw. 2024, 213, 112041. [Google Scholar] [CrossRef]
- Taibi, D.; Lenarduzzi, V.; Pahl, C. Processes, motivations, and issues for migrating to microservices architectures: An empirical investigation. IEEE Cloud Comput. 2017, 4, 22–32. [Google Scholar] [CrossRef]
- Amoroso d’Aragona, D.; Li, X.; Cerny, T.; Janes, A.; Lenarduzzi, V.; Taibi, D. One microservice per developer: Is this the trend in OSS? In Proceedings of the European Conference on Service-Oriented and Cloud Computing, Wittenberg, Germany, 22–24 March 2023; pp. 19–34. [Google Scholar]
- Osman, M.H.; Saadbouh, C.; Sharif, K.Y.; Admodisastro, N. From Monolith to Microservices: A Semi-Automated Approach for Legacy to Modern Architecture Transition using Static Analysis. Int. J. Adv. Comput. Sci. Appl. 2022, 13, 907–916. [Google Scholar] [CrossRef]
- Taibi, D.; Lenarduzzi, V.; Pahl, C. Architectural patterns for microservices: A systematic mapping study. In Proceedings of the CLOSER 2018: 8th International Conference on Cloud Computing and Services Science, Funchal, Portugal, 19–21 March 2018. [Google Scholar]
- Lenarduzzi, V.; Lomio, F.; Saarimäki, N.; Taibi, D. Does migrating a monolithic system to microservices decrease the technical debt? J. Syst. Softw. 2020, 169, 110710. [Google Scholar] [CrossRef]
- Taibi, D.; Systä, K. From monolithic systems to microservices: A decomposition framework based on process mining. In Proceedings of the International Conference on Cloud Computing and Service Science—CLOSER 2019, Crete, Greece, 2–4 May 2019. [Google Scholar]
- Soldani, J.; Tamburri, D.A.; Van Den Heuvel, W.J. The pains and gains of microservices: A systematic grey literature review. J. Syst. Softw. 2018, 146, 215–232. [Google Scholar] [CrossRef]
- Lewis, J.; Fowler, M. Microservices: A Definition of This New Architectural Term. 2014. Available online: https://martinfowler.com/articles/microservices.html (accessed on 1 March 2024).
- Dragoni, N.; Giallorenzo, S.; Lafuente, A.L.; Mazzara, M.; Montesi, F.; Mustafin, R.; Safina, L. Microservices: Yesterday, today, and tomorrow. Present Ulterior Softw. Eng. 2017, 195–216. [Google Scholar] [CrossRef]
- Jamshidi, P.; Pahl, C.; Mendonça, N.C.; Lewis, J.; Tilkov, S. Microservices: The journey so far and challenges ahead. IEEE Softw. 2018, 35, 24–35. [Google Scholar] [CrossRef]
- Kolny, M. Scaling up the Prime Video Audio/Video Monitoring Service and Reducing Costs by 90%. 2023. Available online: https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90 (accessed on 1 March 2024).
- Gos, K.; Zabierowski, W. The comparison of microservice and monolithic architecture. In Proceedings of the 2020 IEEE 16th International Conference on the Perspective Technologies and Methods in MEMS Design (MEMSTECH), Polyana, Ukraine, 12–16 May 2021; pp. 150–153. [Google Scholar]
- Garousi, V.; Felderer, M.; Mäntylä, M.V. Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. Inf. Softw. Technol. 2019, 106, 101–121. [Google Scholar] [CrossRef]
- Kitchenham, B.; Charters, S. Guidelines for Performing Systematic Literature Reviews in Software Engineering. 2007. Available online: https://legacyfileshare.elsevier.com/promis_misc/525444systematicreviewsguide.pdf (accessed on 1 March 2024).
- Azeem, M.I.; Palomba, F.; Shi, L.; Wang, Q. Machine learning techniques for code smell detection: A systematic literature review and meta-analysis. Inf. Softw. Technol. 2019, 108, 115–138. [Google Scholar] [CrossRef]
- Hall, T.; Beecham, S.; Bowes, D.; Gray, D.; Counsell, S. A systematic literature review on fault prediction performance in software engineering. IEEE Trans. Softw. Eng. 2011, 38, 1276–1304. [Google Scholar] [CrossRef]
- Petersen, K.; Feldt, R.; Mujtaba, S.; Mattsson, M. Systematic mapping studies in software engineering. In Proceedings of the 12th International Conference on Evaluation and Assessment in Software Engineering (EASE) 12, Bari, Italy, 26–27 June 2008; pp. 1–10. [Google Scholar]
- Kitchenham, B.; Brereton, P. A systematic review of systematic review process research in software engineering. Inf. Softw. Technol. 2013, 55, 2049–2075. [Google Scholar] [CrossRef]
- Landis, J.R.; Koch, G.G. The measurement of observer agreement for categorical data. Biometrics 1977, 33, 159–174. [Google Scholar] [CrossRef] [PubMed]
- Wohlin, C. Guidelines for Snowballing in Systematic Literature Studies and a Replication in Software Engineering. In Proceedings of the EASE 2014, London, UK, 13–14 May 2014. [Google Scholar]
- Box, C. Introducing Istiod: Simplifying the Control Plane. 2020. Available online: https://istio.io/latest/blog/2020/istiod/ (accessed on 1 March 2024).
- Noonan, A. Goodbye Microservices: From 100s of Problem Children to 1 Superstar. 2018. Available online: https://segment.com/blog/goodbye-microservices/ (accessed on 1 March 2024).
- Nadel, B. Why I Have Been Merging Microservices Back into the Monolith at InVision. 2020. Available online: https://www.bennadel.com/blog/3944-why-ive-been-merging-microservices-back-into-the-monolith-at-invision.htm (accessed on 1 March 2024).
- Posta, C. Istio as an Example of When Not to Do Microservices. 2020. Available online: https://blog.christianposta.com/microservices/istio-as-an-example-of-when-not-to-do-microservices/ (accessed on 1 March 2024).
- Bianchi, L. Istio Is Moving Back to the Monolith, But It Doesn’t Mean You Have to Do the Same. 2020. Available online: https://aletheia.medium.com/istio-back-to-monolith-and-you-88dd3bd23265 (accessed on 1 March 2024).
- Mendonça, N.C.; Box, C.; Manolache, C.; Ryan, L. The monolith strikes back: Why istio migrated from microservices to a monolithic architecture. IEEE Softw. 2021, 38, 17–22. [Google Scholar] [CrossRef]
- Jackson, J. Return of the Monolith: Amazon Dumps Microservices for Video Monitoring. 2023. Available online: https://thenewstack.io/return-of-the-monolith-amazon-dumps-microservices-for-video-monitoring/ (accessed on 1 March 2024).
- Jennings, R. Microservices Sucks—Amazon Goes Back to Basics. 2023. Available online: https://devops.com/microservices-amazon-monolithic-richixbw/ (accessed on 1 March 2024).
- Anderson, T. Reduce Costs by 90% by Moving from Microservices to Monolith: Amazon Internal Case Study Raises Eyebrows. 2023. Available online: https://devclass.com/2023/05/05/reduce-costs-by-90-by-moving-from-microservices-to-monolith-amazon-internal-case-study-raises-eyebrows/ (accessed on 1 March 2024).
- Targett, E. Amazon Prime Video Team Throws AWS Serverless under a Bus. Available online: https://www.thestack.technology/amazon-prime-video-microservices-monolith/ (accessed on 1 March 2024).
- Jellick, C. Microservices are Dead, Long Live the Monolith. 2023. Available online: https://www.acorn.io/microservices-are-dead-long-live-the-monolith/ (accessed on 1 March 2024).
- Weinberg, N. 6 Lessons from the Amazon Prime Video Serverless vs. Monolith Flap. Available online: https://www.networkworld.com/article/3697737/6-lessons-from-the-amazon-prime-video-serverless-vs-monolith-flap.html (accessed on 1 March 2024).
- Mooter, D. The Death of Microservices? 2023. Available online: https://www.forrester.com/blogs/the-death-of-microservices/ (accessed on 1 March 2024).
- Bhasin, A. Exploring Amazon Prime Video’s Architecture: Migrating from Microservices to Monolith for Audio/Video Monitoring Service. 2023. Available online: https://medium.com/@anshita.bhasin/exploring-amazon-prime-videos-architecture-migrating-from-microservices-to-monolith-for-aacbf9fabc73 (accessed on 1 March 2024).
- ForkMyBrain. Why I Have Been Merging Microservices Back into the Monolith at InVision. 2020. Available online: https://notes.nicolevanderhoeven.com/readwise/Articles/Why+I’ve+Been+Merging+Microservices+Back+Into+the+Monolith+at+InVision (accessed on 1 March 2024).
- Rmason. I Have Been Merging Microservices Back into the Monolith. 2020. Available online: https://news.ycombinator.com/item?id=25498079 (accessed on 1 March 2024).
- Ramakani, A. It’s Back! A Trend to Build Monolith. Available online: https://itnext.io/its-back-a-trend-to-build-monolith-852aaa5e086f (accessed on 1 March 2024).
- Adfolks. Transitioning from Monolithic to Microservices Architecture: Pros, Cons, and Segment’s Journey. 2021. Available online: https://www.adfolks.com/blogs/transitioning-from-monolithic-to-microservices-architecture-pros-cons-and-segments-journey (accessed on 1 March 2024).
- Betts, T. To Microservices and Back Again—Why Segment Went Back to a Monolith. 2020. Available online: https://www.infoq.com/news/2020/04/microservices-back-again/ (accessed on 1 March 2024).
- Noonan, A. To Microservices and Back Again. 2020. Available online: https://www.infoq.com/presentations/microservices-monolith-antipatterns/ (accessed on 1 March 2024).
- Danilov, D. My Thoughts on Microservices and Monoliths. 2023. Available online: https://ddanilov.me/thoughts-about-microservices (accessed on 1 March 2024).
- Meyer, D. Segment Struggled with Microservices, Went Back to Monolith. 2018. Available online: https://www.sdxcentral.com/articles/news/segment-struggled-with-microservices-went-back-to-monolith/2018/08/ (accessed on 1 March 2024).
- Heinemeier, D. How to Recover from Microservices. 2023. Available online: https://world.hey.com/dhh/how-to-recover-from-microservices-ce3803cc (accessed on 1 March 2024).
- Leven, S. The Great “Un-Migration”: Migrating from Microservices Back to a Monolith. 2023. Available online: https://learn.codesee.io/migrating-from-microservices-to-a-monolith/ (accessed on 1 March 2024).
- Doglio, F. Microservices Aren’t Always the Answer: A Case for Monoliths. 2022. Available online: https://blog.bitsrc.io/when-microservices-are-not-the-answer-a-case-for-monoliths-895ccefa2728 (accessed on 1 March 2024).
- Almog, S. Is It Time to Go Back to the Monolith? 2023. Available online: https://dev.to/codenameone/is-it-time-to-go-back-to-the-monolith-3eok (accessed on 1 March 2024).
- Paredes, A. Bring Back the Monolith. 2022. Available online: https://medium.com/glovo-engineering/bring-back-the-monolith-92de928ae322 (accessed on 1 March 2024).
- O’Donnell, C. Monolith to Microservices, and Back Again? 2020. Available online: https://ciaranodonnell.dev/posts/the-microservices-monolith-pendulum/ (accessed on 1 March 2024).
- Galovics, A. Don’t Start with Microservices in Production—Monoliths Are Your Friend. 2021. Available online: https://arnoldgalovics.com/microservices-in-production/ (accessed on 1 March 2024).
- Sogos, D.D. Microservices’s Dark Side: The Monolith Strikes Back. 2020. Available online: https://www.hexacta.com/microservicess-dark-side-the-monolith-strikes-back/ (accessed on 1 March 2024).
- Maayan, I. Will Modular Monolith Replace Microservices Architecture? 2022. Available online: https://medium.com/att-israel/will-modular-monolith-replace-microservices-architecture-a8356674e2ea (accessed on 1 March 2024).
- Su, R.; Li, X. Modular Monolith: Is This the Trend in Software Architecture? arXiv 2024, arXiv:2401.11867. [Google Scholar]
- Ampatzoglou, A.; Bibi, S.; Avgeriou, P.; Verbeek, M.; Chatzigeorgiou, A. Identifying, categorizing and mitigating threats to validity in software engineering secondary studies. Inf. Softw. Technol. 2019, 106, 201–230. [Google Scholar] [CrossRef]
- Wohlin, C.; Runeson, P.; Höst, M.; Ohlsson, M.C.; Regnell, B. Experimentation in Software Engineering; Springer: Cham, Switzerland, 2012. [Google Scholar]
- Cruzes, D.S.; Dybå, T. Synthesizing evidence in software engineering research. In Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement, New York, NY, USA, 16–17 September 2010; pp. 1–10. [Google Scholar]
- Chen, R.; Li, S.; Li, Z. From monolith to microservices: A dataflow-driven approach. In Proceedings of the 2017 24th Asia-Pacific Software Engineering Conference (APSEC), Nanjing, China, 4–8 December 2017; pp. 466–475. [Google Scholar]
- Eski, S.; Buzluca, F. An automatic extraction approach: Transition to microservices architecture from monolithic application. In Proceedings of the 19th International Conference on Agile Software Development: Companion; ACM: New York, NY, USA, 2018; pp. 1–6. [Google Scholar]
- Fritzsch, J.; Bogner, J.; Zimmermann, A.; Wagner, S. From monolith to microservices: A classification of refactoring approaches. In Proceedings of the Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment: First International Workshop, DEVOPS 2018, Chateau de Villebrumier, France, 5–6 March 2018; pp. 128–141. [Google Scholar]
- Abbott, M.L.; Fisher, M.T. The Art of Scalability: Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise; Addison-Wesley Professional: Boston, MA, USA, 2015. [Google Scholar]
- Taibi, D.; Lenarduzzi, V. On the definition of microservice bad smells. IEEE Softw. 2018, 35, 56–62. [Google Scholar] [CrossRef]
- Wang, Y.; Kadiyala, H.; Rubin, J. Promises and challenges of microservices: An exploratory study. Empir. Softw. Eng. 2021, 26, 63. [Google Scholar] [CrossRef]
- Driss, M.; Hasan, D.; Boulila, W.; Ahmad, J. Microservices in IoT security: Current solutions, research challenges, and future directions. Procedia Comput. Sci. 2021, 192, 2385–2395. [Google Scholar] [CrossRef]
- Atitallah, S.B.; Driss, M.; Ghzela, H.B. Microservices for data analytics in iot applications: Current solutions, open challenges, and future research directions. Procedia Comput. Sci. 2022, 207, 3938–3947. [Google Scholar] [CrossRef]
Inc./Exc. | Criteria |
---|---|
Inclusion | Papers proposing “change from Microservice back to Monolith” |
Exclusion | Not in English |
Duplicated | |
Out of topic | |
Not peer-reviewed papers | |
Not referred to industrial cases or other factual evidence | |
Not accessible |
Library | White Lit. |
---|---|
Scopus | 277 |
IEEE | 108 |
ACM | 34 |
Web of Science | 152 |
Non-duplicates | 295 |
Reason | Case | Selected Articles |
---|---|---|
Cost | Istio control plane, Prime Video monitoring service, Segment, InVision | [12,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39] |
Complexity | Istio control plane, Segment, InVision | [22,23,24,25,26,27,36,37,40,41] |
Scalability | Istio control plane, Prime Video monitoring service, Segment | [12,22,23,25,26,27,28,29,32,33,35,39,42,43] |
Performance | Segment | [23,39,40,43] |
Organization | Istio control plane, InVision | [22,24,36,37] |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Su, R.; Li, X.; Taibi, D. From Microservice to Monolith: A Multivocal Literature Review. Electronics 2024, 13, 1452. https://doi.org/10.3390/electronics13081452
Su R, Li X, Taibi D. From Microservice to Monolith: A Multivocal Literature Review. Electronics. 2024; 13(8):1452. https://doi.org/10.3390/electronics13081452
Chicago/Turabian StyleSu, Ruoyu, Xiaozhou Li, and Davide Taibi. 2024. "From Microservice to Monolith: A Multivocal Literature Review" Electronics 13, no. 8: 1452. https://doi.org/10.3390/electronics13081452
APA StyleSu, R., Li, X., & Taibi, D. (2024). From Microservice to Monolith: A Multivocal Literature Review. Electronics, 13(8), 1452. https://doi.org/10.3390/electronics13081452