Architektur Prototyp einer Spring Cloud Applikation

Habegger, Moritz and Schena, Micha (2019) Architektur Prototyp einer Spring Cloud Applikation. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.

[img]
Preview
Text
HS 2018 2019-SA-EP-Habegger-Schena-Architektur-Prototyp einer Spring Cloud Applikation.pdf - Supplemental Material

Download (2MB) | Preview

Abstract

Aufgabenstellung: Ziel der Arbeit ist es, einen Prototypen einer Microservice-Architektur zu bauen, der die wesentlichen Aspekte von DevOps berücksichtigt und auf Spring Cloud basiert. Dies beinhaltet die Strukturierung des Projektes in Microservices anhand einer Domain-Driven-Design-Analyse (DDD-Analyse), das Einrichten einer CI/CD-Umgebung mit Jenkins und das automatische Aktualisieren der Live-Instanzen ohne Unterbrechung. Vorgehen / Technologien: Als Erstes definierte das Team als Applikation ein Blog-System, da es sich dabei um eine überschaubare und verständliche Domäne handelt. Als Nächstes wurde eine DDD-Analyse gemacht, um sinnvolle Grenzen zwischen den Microservices zu finden. Um das Risiko von Zeitverzögerungen zu minimieren, wurden einzelne Prototypen entwickelt, die das Zusammenspiel von Google Cloud Platform und Spring zeigen. Des Weiteren wurde die CI/CD-Umgebung, welche Jenkins und SonarQube beinhaltet, auf der Google Cloud Platform aufgesetzt und eingerichtet. Im letzten Abschnitt der Arbeit wurden die Komponenten zu der geplanten Blog-Applikation zusammengeführt. Ergebnis: Es wurde gezeigt, wie die Microservices auf der Google Cloud Platform in Docker-Images mit Kubernetes bereitgestellt und an Services wie PubSub, Cloud Datastore, Memcache oder Cloud SQL angebunden werden können. Mit der DDD-Analyse wurde gezeigt, wie einzelne Kontexte, beispielsweise die Statistik-Funktion von der Haupt-Domäne (Blog-Funktion), getrennt und über einen Message-Bus (PubSub) asynchron aktualisiert werden können und somit Geschwindigkeit gewonnen werden kann. Mit der Umsetzung der CI/CD-Umgebung wurde ein Docker-in-Docker-Ansatz gezeigt, in dem Docker-Images in einem Docker-Container erstellt werden.

Item Type: Thesis (Student Research Project)
Subjects: Area of Application > Development Tools
Technologies > Databases > PostgreSQL
Brands > Google
Divisions: Bachelor of Science FHO in Informatik > Student Research Project
Creators:
CreatorsEmail
Habegger, MoritzUNSPECIFIED
Schena, MichaUNSPECIFIED
Contributors:
ContributionNameEmail
Thesis advisorStocker, MirkoUNSPECIFIED
Depositing User: HSR Deposit User
Date Deposited: 26 Mar 2019 06:48
Last Modified: 26 Mar 2019 06:48
URI: http://eprints.hsr.ch/id/eprint/755

Actions (login required)

View Item View Item