Microservice Architektur

Microservice Architektur

Mit Microservices weg von starren Monolithen hin zu flexiblen Anwendungen

Die fortschreitende Digitalisierung zwingt Unternehmen dazu, flexibel auf Marktanforderungen zu reagieren und ihre Time-to-Market zu verkürzen. Große, monolithische Softwaresysteme können dieser Flexibilität oft nicht mehr standhalten. Eine Microservice Architektur bildet fachliche Funktionen in eigenständigen Modulen ab und vermeidet so unflexible Monolithen.

Vorteile von Microservices

Der Einsatz von Microservice Architekturen vereinfacht Entwicklung, Betrieb und Wartung einer Softwareanwendung.
Die Vorteile von Microservices lassen sich in fünf Bereiche aufteilen:

  • Fachliche Anforderungen agiler umsetzen
    Fachliche Entscheidungen können für jeden Microservice innerhalb einer Applikation getroffen werden, da jeder Microservice mit seiner Funktionalität, für sich selbst steht. Anforderungen für eine Funktion können optimal im kleinen Rahmen umgesetzt werden.

  • Schnelle Implementierung von Microservices
    Bei der Implementierung von Microservices kommt dem Entwicklungsteam die Modularität zugute. Kleine Spezialteams können sich ganzheitlich um einen Service kümmern, Knowhow aufbauen und optimal betreiben. Die Bereitstellung der Microservice Module erfolgt meist über einen Continuous Integration System. Durch die strenge Trennung über Schnittstellen kann jeder Microservice mit seinem eigenen Technologie-Stack umgesetzt werden. Eine Beschränkung auf Java, C# oder Ähnliches gibt es nicht.

  • Erleichterte Qualitätssicherung
    Microservice Architekturen bieten eine erleichterte Qualitätssicherung, denn jeder Microservice wird für sich getestet. Zentrale, lange Tests über Wochen oder Monate gehörten damit der Vergangenheit an. Dies gilt insbesondere dann, wenn alle Tests für einen Microservice automatisiert ausgeführt werden können.

  • Automatisierter Rollout von Anwendungen
    Der Rollout einer Microservice Anwendung erfolgt meist automatisiert mittels Continuous Delivery Pipelines bis in die Produktion. Die Verfügbarkeit der gesamten Anwendung bleibt so immer erhalten, auch, wenn kurzzeitig eine Teilfunktionalität nicht zur Verfügung steht.

  • Effizienter Betrieb von Microservices
    Eine Applikation mit einer Microservice Architektur kann optimal auf die Anforderungen an die Verfügbarkeit reagieren, da Microservices meist im Clusterbetrieb fungieren oder in einer Cloud Plattform betreiben werden. Microservice Anwendungen sind somit auch einzeln skalierbar.

 

doubleSlash ist Partner für professionelle Microservice Architekturen

Warum doubleSlash?

  • Indem wir komplexe IT-Systeme in kleine skalierbare Dienste aufteilen, ermöglichen wir Ihnen, schnell und agil auf die Anforderungen der Digitalisierung zu reagieren

Unsere Empfehlung:

  • Kleine, sinnvolle Einheiten bilden

  • Die Kommunikation der einzelnen Dienste sollte auf HTTPS oder einem Queueing System wie Kafka oder ActiveMQ basieren

  • Die Wahl der Technologie sollte auf den einzelnen Anforderungen basieren, nach dem Motto: Welche Technologie passt zur Anforderung?

Wichtig bei der Entwicklung von Microservices ist unseres Erachtens das Conways Law, es bildet eine gute Basis für organisatorische Themen:

"Organisationen, die Systeme entwerfen, […] sind auf Entwürfe festgelegt, welche die Kommunikationsstrukturen dieser Organisationen abbilden."

Melvin E. Conway
 

  • Die Teams sind in Fachdomänen organisiert, wie Abteilungen in einer Firmenstruktur

  • Die Entwicklung erfolgt realitätsnah und in direkter Abstimmung mit der jeweiligen Abteilung

 

Wir bieten Ihnen

  • Umsetzung von Microservices und deren Deployment in der Cloud (z. B. Microsoft Azure, OpenShift, …), inklusive Releasemanagement
  • 3rd Level Support, Incident- und Problemmanagement im ITIL-Prozess

Wir helfen Ihnen mit Microservices flexibel auf Ihre Anforderungen zu reagieren.

Sie möchten weg von monolithischen Systemen hin zu flexiblen und schlanken Microservice Architekturen?
Dann sprechen Sie uns gerne an.