• search hit 42 of 51
Back to Result List

Vergleich von Spring Boot und Buffalo für die Entwicklung von Microservices

  • Die Relevanz der Microservicearchitektur für die Softwareentwicklung hat in den vergangenen Jahrzehnten -- nicht zuletzt wegen der steigenden Verbreitung von Cloud-Computing -- einen stetigen Zuwachs erfahren. Bei der Entwicklung eines Microservices -- gerade auch im Bereich der Webanwendungen -- werden häufig Frameworks eingesetzt, um repetitive Arbeit zu vermeiden. Ein Beispiel hierfür ist das auf dem Spring Framework basierende Spring Boot Projekt, welches von VMware für die Programmiersprache Java entworfen wurde und auf dem Markt häufig zum Einsatz kommt. Daneben existieren noch weitere Lösungen in verschiedenen Sprachen, wie beispielsweise das relativ neue und weniger bekannte Framework Buffalo des Entwicklers Mark Bates in der Programmiersprache Go. In dieser Arbeit werden Spring Boot und Buffalo bezüglich ihrer Eignung für die Entwicklung von Microservices miteinander verglichen. Als Vergleichsgrundlage wird dafür jeweils ein eigens geschriebenes Programm verwendet, welches typische Workloads in drei unterschiedlichenDie Relevanz der Microservicearchitektur für die Softwareentwicklung hat in den vergangenen Jahrzehnten -- nicht zuletzt wegen der steigenden Verbreitung von Cloud-Computing -- einen stetigen Zuwachs erfahren. Bei der Entwicklung eines Microservices -- gerade auch im Bereich der Webanwendungen -- werden häufig Frameworks eingesetzt, um repetitive Arbeit zu vermeiden. Ein Beispiel hierfür ist das auf dem Spring Framework basierende Spring Boot Projekt, welches von VMware für die Programmiersprache Java entworfen wurde und auf dem Markt häufig zum Einsatz kommt. Daneben existieren noch weitere Lösungen in verschiedenen Sprachen, wie beispielsweise das relativ neue und weniger bekannte Framework Buffalo des Entwicklers Mark Bates in der Programmiersprache Go. In dieser Arbeit werden Spring Boot und Buffalo bezüglich ihrer Eignung für die Entwicklung von Microservices miteinander verglichen. Als Vergleichsgrundlage wird dafür jeweils ein eigens geschriebenes Programm verwendet, welches typische Workloads in drei unterschiedlichen Diensten implementiert. Als Inspiration der Use-Cases und Quelle für Beispieldaten dient eine in der Sulzer GmbH von mir mitentwickelte interne Anwendung zur digitalen Verwaltung von Nutzerdaten. Die Evaluation erfolgt auf Basis des Analytischen Hierarchieprozesses nach Thomas L. Saaty und wird für drei verschiedene Anwendungsfälle getrennt vorgenommen. Betrachtet werden die durchschnittliche Laufzeit der Dienste und deren Standardabweichung, das Supportangebot durch den Anbieter des Frameworks, die Größe der zugehörigen Onlinecommunity, und Erfahrungen bei der Entwicklung mit dem Framework. Benchmarks zur Laufzeit werden sowohl auf Windows- wie auch auf Unix-Systemen durchgeführt. Während Spring Boot auf allen Geräten ähnliche Ergebnisse erzielt, laufen die Benchmarks für Buffalo auf Unix-Systemen durchschnittlich konsistenter ab. Dennoch geht Spring Boot für alle drei Anwendungsfälle als Gewinner hervor, wobei es 60,6% bis 76,0% der Punkte beanspruchen kann.show moreshow less

Download full text files

Export metadata

Additional Services

Search Google Scholar
Metadaten
Author:Leander Ludwig Günther Dreier
Language:German
Document Type:Bachelor Thesis
Reviewer(s) at THI:Franz Regensburger, Sebastian Apel
Publishing Institution:Technische Hochschule Ingolstadt
Date of first Publication:2021/08/05
Year of first Publication:2021
Place of publication:Ingolstadt
Pages:41, xxxvii
URN:urn:nbn:de:bvb:573-11480
Faculties / Institutes / Organizations:Fakultät Informatik
Degree Programmes:Informatik (B. Sc.)
Licence (German):License Logo Urheberrechtsschutz
Release Date:2022/02/09