With the rise of cloud computing and the migration to web-based applications, scalable systems have become highly desirable. And while developing software is hard, designing a scalable system is even harder. The microservice architecture is an attempt to improve the scalability but may introduce additional challenges. In order to correctly implement the microservice architecture, it is important to understand how the different mechanisms used in the architecture affect the quality of the application. The purpose of this research is to show how to evaluate microservice applications and how much they can differentiate from each other. A literature study and an architectural analysis are performed by reviewing research related to web applications and microservices. Subsequently, the empirical data is collected by evaluating and comparing two different microservice applications based on their quality characteristics. The results of the literature study indicate that performance efficiency, compatibility, reliability, security, maintainability and portability are the most relevant quality characteristics of the microservice architecture. Furthermore, the architectural analysis describes how microservices affect these quality characteristics. Lastly, the evaluation showed that different approaches can significantly alter the strength of the different characteristics. For this specific comparison between the two selected applications, it was determined that the biggest differentiating factor is the asynchronous and synchronous messaging. To conclude, the results show it is possible to evaluate a microservice application by its qualities. Additionally, while microservice applications may use completely different technologies, the fundamental concept behind them remains the same. What differs is the approaches used and how they affect the quality characteristics.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:bth-21573 |
Date | January 2021 |
Creators | Bahnan, Filip |
Publisher | Blekinge Tekniska Högskola, Institutionen för programvaruteknik |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0015 seconds