In-Memory-Java-Plattform Baratine 0.10 veröffentlicht

Michael Thomas

© Shutterstock.com/Kirill__M

Asynchrone verteilte Applikationen stellen die Zukunft von Webanwendungen dar. Angebrochen ist diese Zukunft bislang allerdings noch nicht, da entsprechende Lösungen aufwändig und komplex zu bauen und zu warten sind. Glauben zumindest die Macher von Baratine, einer verteilten In-Memory-Java-Plattform, die der Erstellung eines Netzwerks von lose verbundenen POJO-Microservices dient.

Baratine kann, so die Entwickler, demnach als High-Level-Abstraktion für die reaktive Programmierung betrachtet werden. Mit Baratine besteht die einzige Anforderung an die Entwickler darin, die Methoden der API, die sie designen, zu implementieren.

Baratine kombiniert Daten und Logik in derselben JVM, d.h. die Daten sind nicht vom Service getrennt, sind nicht im Besitz der Datenbank, und werden auch nicht von anderen Prozessen modifiziert. In Baratine ist ein POJO der Service, während die Felder in einer Klasse die Daten sind. Das POJO bleibt im Speicher und enthält die maßgebliche Kopie der Daten. Da die Services nie auf die Datenbank warten müssen (die Daten befinden sich bereits im Speicher innerhalb des Service), sollen sie den Entwicklern zufolge extrem schnell arbeiten. Baratine sichert die Daten zwar in einer internen Datenbank im Hintergrund, diese dient allerdings nur als Backup zur Wiederherstellung nach Neustarts.

Neuerungen in Baratine 0.10

In der aktuellen Version des Projekts haben sich mehrere teils bedeutende Änderungen ergeben. So wurde die Streaming-API einer gründlichen Überarbeitung unterzogen; das Ergebnis sind ResultStream und ResultStreamBuilder. ResultStream wird von der Implementierung genutzt, ResultStreamBuilder – wie zuvor – von der Proxy-API. Allerdings verfügt letzterer nun lediglich über zwei Terminals, die den Stream starten: exec und result. Alle anderen Methoden sind nun Stream-Filter und keine Terminals mehr. Als weitere Neuerung kann ResultStream durch die Ergänzung um cancel/isCancelled ab sofort als nachrichtenbasierte Subscription-API genutzt werden.

Zudem können eingebettete Applikationen jetzt javax.script nutzen, um einen eingebetteten Server zu starten. Die Skript-Anweisungen sind dabei Baratine-CLI-Befehle. Das javax.script-Interface erlaubt das Einbetten von Applikationen, um Abhängigkeiten von der Barantine-API zu vermeiden. Darüber hinaus hat der Java-Client ein neues Standard-Interface erhalten.

Baratine stammt aus dem Hause Caucho, das u. a. für Resin, Quercus und Hessian verantwortlich zeichnet. Das Projekt ist Open Source und steht unter der GNU General Public License (3. Version).

Aufmacherbild: Group of Technicians repairing CPU von Shutterstock / Urheberrecht: Kirill__M

Verwandte Themen:

Geschrieben von
Michael Thomas
Michael Thomas
Michael Thomas studierte Erziehungswissenschaft an der Johannes Gutenberg-Universität Mainz und arbeitet seit 2013 als Freelance-Autor bei JAXenter.de. Kontakt: mthomas[at]sandsmedia.com
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: