Lagom ist "production ready"

Lagom 1.0: Erste Hauptversion des Microservice-Frameworks veröffentlicht

Dominik Mohilo

© Shutterstock.com/Supit Choosavang

Nicht ganz ein halbes Jahr hat es von Lightbends Ankündigung des Microservice-Frameworks Lagom bis zu dessen erster Hauptversion gedauert. Das Framework ist nun fertig für den Produktionseinsatz und hat sich nicht weniger vorgenommen als die Art und Weise, Microservices zu schreiben, neu zu erfinden.

Seit dem ersten Milestone von Lagom sind einige Features zu dem Framework hinzugekommen, unter anderem wurde die Art und Weise geändert, wie URL-Parameter in REST-Calls gemanagt werden. Bislang wurden sie als Parameter des Service-Calls modelliert, nun werden sie direkt an den Service-Call-Builder weitergereicht. Dies macht den Ablauf einfacher, denn das Definieren von ID-Serializers war einer der verwirrendsten Teile des internen APIs.

Der Support für einen Konfigurations-basierten Service Locator wurde ebenfalls in die aktuelle Version eingefügt. Durch diesen soll das sogenannte ad hoc production deployment ermöglicht werden. Ein Service Locator ist in die Entwicklungsumgebung von Lagom eingebettet. So können sich Services gegenseitig erkennen und miteinander kommunizieren. Das funktioniert auch mit externen Services, allerdings ist es auch möglich, den Service Locator zu deaktivieren.

Mit Version 1.0 von Lagom wurde auch das Circuit Breaking zur Verantwortlichkeit des Service Locators integriert. Der Grund hierfür liegt darin, dass ein Service Locator immer weiß, welche Nodes verfügbar sind. Daher können sie das Circuit Breaking pro Node integrieren.

Hintergrund

Das Unternehmen Lightbend (vormals Typesafe) wurde 2011 unter anderem von Martin Odersky, dem Erschaffer der Programmiersprache Scala, und Jonas Bonér, dem Entwickler der Middleware Akka gegründet. Anfang diesen Jahres wurde nicht nur eine Namensänderung verkündet, sondern auch die Pläne für ein Microservice-Framework vorgestellt.

Kurz nach der Ankündigung wurde das Framework schließlich veröffentlicht. Auf drei Design-Prinzipien stützt sich das Framework hauptsächlich: Asynchronität, verteilte Persistenzmuster und Entwicklerproduktivität. Der Fokus von Lagom liegt, im Gegensatz zu herkömmlichen Microservice-Frameworks, nicht auf der Erstellung von einzelnen Microservices, sondern auf großen und verteilten Microservice-Systemen.

Die Kommunikation zwischen den Services ist eine der Kernkompetenzen des Frameworks und wird durch das API von Lagom abgedeckt. Durch den die Fähigkeit mit REST-Calls zu arbeiten, kann mit jeder anderen REST-fähigen Technologie kommuniziert werden. Das Persistenz-API von Lagom unterstützt die Implementierung von Event Sourcing und CQRS.

Durch die Nutzung von Typesafe ConductR, Lightbends kommerziellem Deployment-Werkzeug für verteilte Anwendungen, werden die Skalierung und das Deployment von Services gemanagt. ConductR stellt für Lagom zudem Datenbanken und deren Konfiguration sowie Tools zur Visualisierung und dem Managen dieser zur Verfügung. Das Clustering von Nodes eines Services wird in Lagom durch Akka und ConductR konfiguriert.

Die umfangreiche Dokumentation gibt einen guten Überblick über die Funktionsweise des Microservice-Frameworks und ist Teil der mit Version 1.0 gelaunchten neuen Web-Präsenz.

Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: