Analysis and Comparison of Application Architecture: Monolith, Microservices and Modular Approach
Analysis and Comparison of Application Architecture: Monolith, Microservices and Modular Approach
Typ dokumentu
diplomová prácemaster thesis
Autor
Martin Skalický
Vedoucí práce
Vitvar Tomáš
Oponent práce
Mlejnek Jiří
Studijní obor
Webové inženýrstvíStudijní program
InformatikaInstituce přidělující hodnost
katedra softwarového inženýrstvíPráva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznamAbstrakt
Architektura mikroslužeb se stala všudypřítomným standardem v softwarovém průmyslu, kde se často používá jako univerzální řešení, aniž by se braly v úvahu její nevýhody. Cílem této práce je analyzovat přístupy k návrhu monolitické architektury, architektury mikroslužeb a moderní modulární architektury a porovnat je a zároveň zdůraznit často přehlížené negativní důsledky mikroslužeb ve prospěch modulární monolitické architektury. Autor se zabývá svými zkušenostmi s prací na projektech mikroslužeb a problémy, se kterými se v praxi s touto architekturou setkal. Pro každý ze zmíněných typů architektury je vytvořena aplikace, která je důkladně analyzována z hlediska výkonu a latence. V závěru práce je představena metodika pro využití přístupu architektury Modular Monolith v nových projektech a způsob, jakým se může uvedená architektura dále rozvíjet v průběhu životního cyklu aplikace. Microservices architecture have become a ubiquitous standard in the software industry, where they are often used as a one-size-fits-all solution, disregarding their drawbacks. This thesis aims to analyse the design approaches of monolithic, microservices and modern modular architecture and compare them, while emphasising the frequently overlooked negative consequences of Microservices in favour of Modular Monolith architecture. The author discusses his experience working on microservices projects and the challenges they faced with the architecture in practice. A proof of concept application is developed for each type of architecture mentioned and thoroughly analysed for performance and latency. Finally, the thesis concludes by presenting a methodology for employing the Modular Monolith architecture approach in new projects and how the said architecture can evolve throughout the application lifecycle.
Kolekce
- Diplomové práce - 18102 [942]