Cloud native vývoj a jeho aplikování na projekt License Manager
Cloud native development applied to the License Manager project
dc.contributor.advisor | Malec Oldřich | |
dc.contributor.author | Viktor Holý | |
dc.date.accessioned | 2023-06-10T22:52:10Z | |
dc.date.available | 2023-06-10T22:52:10Z | |
dc.date.issued | 2023-06-10 | |
dc.identifier | KOS-1240469456305 | |
dc.identifier.uri | http://hdl.handle.net/10467/108938 | |
dc.description.abstract | Tato diplomová práce se zaměřuje na nativní cloudový vývoj. V teoretické části popisuje jeho principy a principy architektury mikroslužeb. Teoretické poznatky jsou následně aplikovány na aplikaci pro prodej softwaru License Manager, která má v současné verzi monolitickou architekturu a je realizována nová nativní cloudová verze její backendové části. Praktická část pokrývá všechny fáze softwarového cyklu. V analýze je popsána stávající verze a jsou revidovány požadavky na novou verzi. Návrh popisuje dělení funkcí mezi mikroslužby a jejich spolupráci. Výsledkem fáze návrhu je distribuovaný systém se šesti mikroslužbami, který je následně implementován s využitím nové sady technologií zahrnující TypeScript, gRPC, RabbitMQ, GraphQL a grafovou databázi. Výsledný kód je pokryt jednotkovými testy a funkčnost systému jako celku ověřena integračními testy. Proces testování, sestavení a vydání nových verzí je automatizován. Součástí implementace je vzorové nasazení aplikace do Kubernetes včetně nástrojů pro monitorování aplikace. Výsledkem práce je nové řešení, které oproti původnímu umožňuje mimo jiné rychlejší změny, horizontální škálování a nabízí násobně vyšší výkon při stejném zatížení hardwaru. | cze |
dc.description.abstract | This master thesis focuses on cloud native development. In the theoretical part it describes its principles and the principles of microservices architecture. The theoretical knowledge is then applied to a software sales application, License Manager, which has a monolithic architecture in its current version and a new native cloud version of its backend is implemented. The practical part covers all phases of the software cycle. In the analysis, the current version is described and the requirements for the new version are revised. The design describes the division of functions between microservices and their collaboration. The design phase results in a distributed system with six microservices, which is then implemented using a new set of technologies including TypeScript, gRPC, RabbitMQ, GraphQL and a graph database. The resulting code is covered by unit tests and the functionality of the system as a whole is verified by integration tests. The process of testing, building and releasing new versions is automated. The implementation includes a sample deployment of the application to Kubernetes, including tools for monitoring the application. The result of the work is a new solution that, compared to the original one, allows, among other things, faster changes, horizontal scaling, and offers multiple times better performance under the same hardware load. | eng |
dc.publisher | České vysoké učení technické v Praze. Vypočetní a informační centrum. | cze |
dc.publisher | Czech Technical University in Prague. Computing and Information Centre. | eng |
dc.rights | 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.html | eng |
dc.rights | Vysokoš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 | cze |
dc.subject | nativní cloudový vývoj | cze |
dc.subject | mikroslužby | cze |
dc.subject | kontejnery | cze |
dc.subject | Node.js | cze |
dc.subject | TypeScript | cze |
dc.subject | Kubernetes | cze |
dc.subject | gRPC | cze |
dc.subject | GraphQL | cze |
dc.subject | prodej softwaru | cze |
dc.subject | cloud native development | eng |
dc.subject | microservices | eng |
dc.subject | containers | eng |
dc.subject | Node.js | eng |
dc.subject | TypeScript | eng |
dc.subject | Kubernetes | eng |
dc.subject | gRPC | eng |
dc.subject | GraphQL | eng |
dc.subject | software sales | eng |
dc.title | Cloud native vývoj a jeho aplikování na projekt License Manager | cze |
dc.title | Cloud native development applied to the License Manager project | eng |
dc.type | diplomová práce | cze |
dc.type | master thesis | eng |
dc.contributor.referee | Hunka Jiří | |
theses.degree.discipline | Softwarové inženýrství | cze |
theses.degree.grantor | katedra softwarového inženýrství | cze |
theses.degree.programme | Informatika | cze |
Soubory tohoto záznamu
Tento záznam se objevuje v následujících kolekcích
-
Diplomové práce - 18102 [1005]