Interview mit Niko Köbler

Serverless Java: „Wer in die Cloud geht und nur über Kosten nachdenkt, hat den Sinn und Zweck der Cloud nicht verstanden“

Dominik Mohilo

Niko Köbler

Ist Serverless noch ein Hype oder schon wirklich in der Softwareindustrie angekommen? Und was genau ist Serverless eigentlich? Wir sprachen mit Niko Köbler, freiberuflicher Softwareentwickler und Co-Lead der JUG Darmstadt, über diese Fragen im Zuge der Veröffentlichung seines neuesten Artikels aus dem aktuellen Java Magazin. Im Interview geht er außerdem auf das Framework Quarkus und Java im Kontext von Serverless-Computing ein.

JAXenter: Serverless ist und war ein kontroverses Schlagwort. Für manche ist es nichts anderes als „FaaS“, für andere steckt mehr dahinter. Daher vielleicht zunächst einmal die Frage: Was ist Serverless für dich?

Niko Köbler: Serverless war und ist für mich immer noch der große Vorteil, sich nicht um das Management der Infrastruktur kümmern zu müssen, das erledigt der Provider für mich transparent. Wenn ich nicht möchte, muss ich mich nicht um Dinge wie Server, Container, VM oder sonst etwas kümmern, sondern kann mich rein auf meinen Code konzentrieren. Function-as-a-Service (FaaS) ist dabei nur eine nette Nebenerscheinung, aber nicht das Kernfeature von Serverless. Serverless ist weit mehr als reines FaaS. So verwende ich auch Serverless-Datenbanken, API Gateways, Queues & Topics, etc. Ein weiterer Grundgedanke von Serverless ist, dass alles auf Events basiert und es keine konkurrierenden Threads mehr gibt, da jedes Event in einer dedizierten Umgebung verarbeitet wird.

JAXenter: Die großen Cloud-Anbieter kämpfen um die Gunst der Entwickler. Gibt es signifikante Alleinstellungsmerkmale bei Amazon, Google, IBM, Oracle und Co. oder geht es im Endeffekt nur um die Kosten pro Service-Aufruf?

Wer in die Cloud geht und nur über Kosten nachdenkt, hat den Sinn und Zweck der Cloud nicht verstanden.

Niko Köbler: Wer in die Cloud geht und nur über Kosten nachdenkt, hat den Sinn und Zweck der Cloud nicht verstanden. Gleichzeitig habe ich aber das Potential, wenn ich es richtig mache, bei mehr Möglichkeiten (Verfügbarkeit, Skalierung, Elastizität, etc.) kostengünstiger zu bleiben, als wenn ich den gleichen Funktionsumfang selbst bereitstellen wollte. Jeder Anbieter hat seine Vor- und Nachteile. Und jedes Unternehmen muss abwägen, welcher Anbieter mit welchem Featureset am besten zu einem passt. Bestenfalls geschieht das sogar auf Projektebene und gilt nicht global für ein Unternehmen. Leider sehe ich auch hier wieder oft, dass einfach Golfplatz-Management-Entscheidungen vor wirklicher Bedarfsabdeckung rangieren. Schade drum.

Gleichzeitig versuchen Unternehmen auch, irgendwie „unabhängig“ von den „bösen“ Cloud-Anbietern zu bleiben und sich ihre eigene Cloud aufzubauen. In der Praxis sehe ich allerdings diese Unternehmen immer wieder scheitern, ohne dass sie es zugeben würden. Simon Wardley hat bereits vor einigen Jahren gesagt, dass Unternehmen nicht ihre eigene Serverless-Umgebung betreiben, sondern auf die Cloud-Anbieter setzen sollen, so könnten sie mehr Benefit aus den Angeboten und für ihre Anforderungen holen. Er hat dies mit der Toaster-Analogie verglichen: Wer sich Brot toasten will, kauft sich ja auch einen Toaster und baut ihn nicht selbst. Vor Kurzem hat übrigens auch Gregor Hohpe einen ähnlichen Artikel veröffentlicht, in dem er sagt, dass Unternehmen nicht dem Trugschluss der vermeintlichen Vorteile ihrer „eigenen“ Enterprise-Cloud unterliegen sollen („Don’t build an enterprise non-cloud!“)

JAXenter: Wird Serverless an Bedeutung zunehmen, oder wird es eine Nische bleiben?

Niko Köbler: Je nachdem wen man fragt, ist es schon heute keine Nische mehr. Ich setze bereits in mehreren Projekten erfolgreich Serverless-Komponenten ein und meine Kunden sind sehr zufrieden damit. Serverless wird weiter wachsen, keine Frage. Schon der zuvor genannte Simon Wardley hat vor einiger Zeit gesagt, dass es keine Frage des „ob“ ist, sondern nur des „wann“.

JAXenter: Quarkus ist im Kontext von Serverless-Java ein aktuelles Hypethema. Was unterscheidet Quarkus von der Konkurrenz wie Micronaut oder ähnlichen Frameworks?

Quarkus ist eher im Kontext von Containern ein Hypethema, nicht in Sachen Serverless.

Niko Köbler: Ich würde eher sagen, dass Quarkus im Kontext von Containern ein Hypethema ist. Klar, es kann auch irgendwie irgendwas mit Serverless, das beschreibe ich ja in meinem aktuellen Artikel im Java Magazin. Aber in meinen Augen ist es eher für den Einsatz in Containern optimiert, als für einen effizienten Einsatz in einer Serverless Umgebung.

In wie weit andere Frameworks sich da unterscheiden, dazu kann ich wenig sagen, da ich mich bislang nur mit Quarkus beschäftigt habe. Aber auch hier gilt wahrscheinlich: Jeder hat so seine Vor- und Nachteile und eigene Herangehensweisen an das Thema. Bekomme ich Feature A bei dem einen „geschenkt“ und muss mir Feature B hart erarbeiten, kann es bei dem anderen Framework genau andersrum sein.

JAXenter: Im Kontext von Serverless ist natürlich auch die Frage, ob eine Programmiersprache sich für den Einsatz in diesem Kontext eignet. Was zeichnet Java für dich im Hinblick auf Serverless aus?

Niko Köbler: Java ist eine seit über 25 Jahren etablierte Programmiersprache. Die Sprache und das Ökosystem rund um die Sprache entwickelt sich stetig weiter und passt sich aktuellen Anforderungen und Gegebenheiten an. Es gibt also keinen Grund, Java _nicht_ für Serverless Anwendungen zu verwenden. Die Sprache alleine entscheidet nie über den Erfolg oder Misserfolg einer technischen Lösung, viel wichtiger ist doch, ob und wie die fachlichen Anforderungen umgesetzt werden können. Mit der Ahead-of-Time Kompilierungsoptimierung von Quarkus und der nativen Ausführbarkeit von Java-Anwendungen mit GraalVM ist die Zukunft von Java für Serverless sehr gut geebnet und es wird weitere auf diesen Optionen basierende Lösungsansätze geben.

JAXenter: Vielen Dank für das Interview, Niko!

Niko Köbler macht irgendwas mit Computern, On-Premises, im Web und in der Cloud. Er ist Co-Lead der JUG Darmstadt, Sprecher auf internationalen Konferenzen und Autor des Buchs „Serverless Computing in der AWS Cloud“.
 
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

avatar
4000
  Subscribe  
Benachrichtige mich zu: