Analysis of selected features of application based on monolithic and microservice architecture

Kamil Jaskot

kamil.jaskot@pollub.edu.pl
Lublin University of Technology (Poland)

Sławomir Przyłucki


Lublin University of Technology (Poland)

Abstract

The article describes the performance of applications built in monolithic and microservice architectures. The base of research includes application supporting prescription management developed with the use of Spring Framework technology and implemented in the Docker Swarm test environment. The tested applications were subjected to various loads in the form of sending HTTP requests that simulated user behaviour. The research has proven that an application created based on microservices architecture offers better traffic handling in case of high load. Scaling a microservice application allows for greater gains in performance measured as quantity served client requests per unit of time than scaling a monolithic application under the same conditions scaling.


Keywords:

microservices, monolith-software architecture, scaling services, spring framework

C. Richardson, Mikroserwisy: Wzorce z przykładami w języku Java, PWN, 2020.
  Google Scholar

P. Mell, T. Grance, et al. The NIST definition of cloud computing. National Institute of Standards and Technology Special Publication 800-145, Gaithersburg (2011) 1-7.
DOI: https://doi.org/10.6028/NIST.SP.800-145   Google Scholar

V. Andrikopoulos, T. Binz, F. Leymann, S. Strauch, How to adapt applications for the cloud environment. Challenges and solutions in migrating applications to the cloud, Computing 95(6) (2013) 493–535.
DOI: https://doi.org/10.1007/s00607-012-0248-2   Google Scholar

P. Jamshidi, A. Ahmad, C. Pahl, Cloud migration research: A systematic review, IEEE Transactions on Cloud Computing 1(2) (2013) 142–157.
DOI: https://doi.org/10.1109/TCC.2013.10   Google Scholar

A. Balalaie, A. Heydarnoori, P. Jamshidi, Migrating to Cloud-Native Architectures Using Microservices. An Experience Report, European Conference on Service-Oriented and Cloud Computing (2015) 201-215.
DOI: https://doi.org/10.1007/978-3-319-33313-7_15   Google Scholar

L. Bass, I. Weber, L. Zhu, DevOps: A Software Architect’s Perspective, O’Reilly, 2019.
  Google Scholar

S. Stoja, S. Vukmirovic, N. Dalcekovic, D. Capko, Accelerating Performance in Critical Topology Analysis of Distribution Management System Process by Switching from Monolithic to Microservices, Revue Roumaine des Sciences Techniques Serie Electrotechnique et Energetique 63 (2018) 338-343.
  Google Scholar

K. Cebeci, Ö. Korçak, Design of an Enterprise Level Architecture Based on Microservice, Bilişim Teknolojileri Dergisi 13 (2020) 357-371.
DOI: https://doi.org/10.17671/gazibtd.558392   Google Scholar

B. Shafabakhsh, R. Lagerström, S. Hacks, Evaluating the Impact of Inter Process Communication in Microservice Architectures, International Workshop on Quantitative Approaches to Software Quality 2767 (2020) 55–63.
  Google Scholar

Strona główna Apache JMeter, https://jmeter.apache.org/, [27.05.2022].
  Google Scholar

V. Adamescu, Analysing monolithic and microservices software architecture for SME web services/applications, (2020) https://www.researchgate.net/publication/341353952_Analysing_monolithic_and_microservices_software_architecture_for_SME_web_servicesapplications
  Google Scholar

D. Taibi, V. Lenarduzzi, P, Claus, Architectural Patterns for Microservices: A Systematic Mapping Study, Closer (2018) https://hdl.handle.net/10863/5599
DOI: https://doi.org/10.5220/0006798302210232   Google Scholar

F. Vera-Rivera, H. Astudillo, M. Gaona, Desarrollo de aplicaciones basadas en microservicios: tendenciasy desafíos de investigación, Revista Iberica de Sistemas e Tecnologias de Informacao E23 (2019) 107 - 120.
  Google Scholar

Strona główna narzędzia testowego Locust, https://locust.io/, [27.05.2022].
  Google Scholar

Dokumentacja narzędzia Gatling, https://gatling.io/docs/gatling/reference/3.7/, [27.05.2022].
  Google Scholar

S. Shrivastava, S. B. Prapulla, Comprehensive Review of Load Testing Tools, IRJET (2020) 3392-3395.
  Google Scholar

A. Raj, K. Jasmine, Building Microservices with Docker Compose, The International journal of analytical and experimental modal analysis XIII (2021) 1215- 1219.
  Google Scholar

S. Newman, Budowanie mikrousług. Projektowanie drobnoziarnistych systemów, Helion, 2022.
  Google Scholar

S. Newman, Monolith to Microservices. Evolutionary Patterns to Transform Your Monolith, O’Reilly, 2019.
  Google Scholar

Decompose by transactions, https://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-decomposing-monoliths/decompose-transactions.html, [27.05.2022].
  Google Scholar

Wzorce projektowe architektury mikrousługowej, https://microservices.io/patterns/index.html, [27.05.2022].
  Google Scholar

Dokumentacja Spring Cloud, https://spring.io/projects/spring-cloud, [27.05.2022].
  Google Scholar

Download


Published
2022-12-30

Cited by

Jaskot, K., & Przyłucki, S. (2022). Analysis of selected features of application based on monolithic and microservice architecture. Journal of Computer Sciences Institute, 25, 393–400. https://doi.org/10.35784/jcsi.3061

Authors

Kamil Jaskot 
kamil.jaskot@pollub.edu.pl
Lublin University of Technology Poland

Authors

Sławomir Przyłucki 

Lublin University of Technology Poland

Statistics

Abstract views: 128
PDF downloads: 137