Java-Framework Quarkus: Red Hat vereint reaktive und imperative Programmierung

Nichts weniger als ein "Supersonic Subatomic Java" verspricht der Open-Source-Spezialist mit dem neuen "Kubernetes Native Java Framework" Quarkus.

In Pocket speichern vorlesen Druckansicht 14 Kommentare lesen
Java-Framework Quarkus: Red Hat vereint reaktive und imperative Programmierung

(Bild: dpa, Christian Charisius)

Lesezeit: 2 Min.
Von
  • Alexander Neumann

Red Hat will mit der Vorstellung des Java-Frameworks Quarkus Java-Programmierern bei der Entwicklung zeitgemäßer Anwendungen helfen. Trotz zahlreicher Neuerungen und Änderungen sei es für die schon vor über 20 Jahren initial vorgestellte Java-Entwicklungsplattform schwer, mit neuen Entwicklungen wie Anwendungs-Containerisierung, Microservices, reaktiver Programmierung, Function as a Service (FaaS), 12-Faktor-Apps und Cloud-nativer Entwicklung Schritt zu halten. Das zumindest ist die Meinung des Red-Hat-Entwicklers Jason Greene in der Ankündigung zu Quarkus.

Er bezeichnet Quarkus als "Kubernetes Native Java Framework", das sich sowohl mit der neuen GraalVM als auch der klassischen HotSpot-VM (Virtual Machine) nutzen lässt und etablierte Java-Bibliotheken und -Standards wie Eclipse MicroProfile, Java Persistence API (JPA)/Hibernate, JAX-RS, Vert.x und Netty nutzt. Das Ziel ist es, Java zu einer "führenden Plattform" in Kubernetes-Anwendungsszenerien und Serverless-Umgebungen zu machen und Entwicklern sowohl ein reaktives als auch ein den meisten Java-Entwicklern eher vertrautes imperatives Programmiermodell unter einem Dach anzubieten, um eine größere Bandbreite an verteilten Anwendungsarchitekturen abdecken zu können.

Vom propagierten Ansatz Container first versprechen sich die Entwickler einerseits schnelle Startzeiten im Millisekundenbereich, was das automatische Hoch- und Herunterskalieren von Microservices auf Containern und Kubernetes sowie die On-the-spot-Ausführung von Functions as a Service ermöglicht. Andererseits ist von einer geringen Speicherauslastung bei Microservices-Architekturen die Rede, die mehrere Container erfordern. Schließlich sieht man mehr Raum für kleinere Anwendungen und Container-Images mit geringer Speicherkapazität. Weitere Vorteile sind laut Greene eine einheitliche Konfiguration in einer einzigen Property-Datei und offenbar keine Probleme bei der Generierung nativer ausführbarer Dateien.

Zur Erweiterung der genannten Quarkus-Techniken gibt es ein Framework, das Entwickler zur Erweiterung mit ihren Frameworks nutzen können. Das Erweiterungs-Framework kompiliert die externen Komponenten zu nativem GraalVM-Binarcode. Auf der Website des Projekts finden sich außerdem Logos von Prometheus, RESTEasy, OpenShift, Jaeger, Apache Camel, Apache Kafka und Infinispan.

Wer sich einen tiefergehenden Einblick in den vollmundig mit "Supersonic Subatomic Java" beschriebenen Ansatz von Quarkus verschaffen möchte, der sei auf die Blog-Ankündigung sowie die Quarkus-Website verwiesen. Das Framework ist unter der Apache License Version 2.0 Open Source, und interessierte Entwickler sind eingeladen, sich zu beteiligen. (ane)