Převod monolitické aplikace na architekturu mikroslužeb

Název práce: Převod monolitické aplikace na architekturu mikroslužeb
Autor(ka) práce: Česal, David
Typ práce: Diplomová práce
Vedoucí práce: Pecinovský, Rudolf
Oponenti práce: Šlajchrt, Zbyněk
Jazyk práce: Česky
Abstrakt:
Tato diplomová práce popisuje převod existující monolitické aplikace na architekturu mikro-služeb. Použitými technologiemi jsou Java 8 a Spring Framework, který pro rychlejší konfi-guraci využívá Spring Boot. Hlavním důvodem pro změnu architektury je rozhodnutí použít aplikaci jako základ pro většinu firemních programů, aby v nich nemusely být duplikovány funkce, které už aplikace podporuje. Rozšiřování monolitické aplikace by bylo náročné, protože zdrojový kód by byl příliš provázaný a nebylo by možné jednu část nahradit bez ovlivnění jiné.V práci jsou nejprve obecně porovnány výhody a nevýhody monolitických aplikací a mikro-služeb, jsou charakterizovány mikroslužby a popsány způsoby komunikace mezi nimi. Teo-retickou část práce doplňuje shrnutí možností virtualizace běhového prostředí. V praktické části práce autor nejprve popisuje, jakým způsobem aplikaci rozdělit, kdy klíčem pro rozdě-lení jsou balíčky v původní monolitické aplikaci. Dále autor popisuje nové členění z hlediska Maven projektů a z pohledu mikroslužeb, které používají třívrstvou architekturu. Pro vzá-jemnou komunikaci mikroslužeb je definován vlastní systém příkazů a komunikátorů. V práci je popsána konfigurace webového serveru, spojení s databází a zabezpečení aplikace. Součástí je příručka administrátora, která ukazuje vytvoření virtuálního serveru ve formě linuxového kontejneru a instalaci nástrojů potřebných pro přípravu a provoz aplikace. Po-slední částí práce je uživatelská příručka, která obsahuje náhledy obrazovek spolu s ukázkami nejčastějších scénářů použití aplikace.Přílohou práce je zdrojový kód převedené aplikace, která používá architekturu mikroslužeb.
Klíčová slova: Java EE; Spring; Hibernate; Maven; Mikroslužby; změna architektury aplikace
Název práce: Converting a monolithic application to microservice architecture
Autor(ka) práce: Česal, David
Typ práce: Diploma thesis
Vedoucí práce: Pecinovský, Rudolf
Oponenti práce: Šlajchrt, Zbyněk
Jazyk práce: Česky
Abstrakt:
This diploma thesis describes the conversion of an existing monolithic application into micro-service architecture. The technologies used are Java 8 and Spring Framework, which uses Spring Boot for faster configuration. The main reason for changing architecture is to use the application as the basis for most corporate programs to avoid duplicating features that are already supported by the application. Expanding the monolithic application would be chal-lenging because the source code would be too interlinked, and it would not be possible to replace one part without affecting the other.At first, the advantages and disadvantages of monolithic applications and microservices are compared, microservices are characterized and the ways of communication between them are described. The theoretical part of the thesis is completed by the summary of possibilities of application virtualization. In the practical part of the thesis, the author first describes how to divide the application, when packages in the original monolithic application are the key for partitioning. Further, the author describes a new breakdown from the viewpoint of Maven projects and from the point of view of microservices that use three-tier architecture. For communication between microservices, the system of commands and communicators is defined. The thesis describes configuration of web server, database connection and application security. Administrator's Guide is also included, and it shows how to create a virtual server in the form of a Linux container and how to install the tools needed for preparation and running the application. The last part of the thesis is a user guide that contains screen previews along with examples of the most common usage scenarios.Source code of the converted application that uses the microservice architecture is attached.
Klíčová slova: Java EE; Spring; Microservices; Hibernate; Maven; software architecture change

Informace o studiu

Studijní program / obor: Aplikovaná informatika/Informační systémy a technologie
Typ studijního programu: Magisterský studijní program
Přidělovaná hodnost: Ing.
Instituce přidělující hodnost: Vysoká škola ekonomická v Praze
Fakulta: Fakulta informatiky a statistiky
Katedra: Katedra informačních technologií

Informace o odevzdání a obhajobě

Datum zadání práce: 10. 1. 2018
Datum podání práce: 23. 4. 2018
Datum obhajoby: 1. 6. 2018
Identifikátor v systému InSIS: https://insis.vse.cz/zp/64401/podrobnosti

Soubory ke stažení

    Poslední aktualizace: