© Excellent backgrounds/Shutterstock.com
Java Magazin
Interview mit Chris Thalinger

GraalVM: Begriffsentwirrung

Java Magazin: Hallo Chris, ein paar Fragen zu Graal an dich. Zunächst einmal: Was ist Graal und welche Editionen sind verfügbar?

Chris Thalinger


Chris Thalinger: Es gibt ein wenig Verwirrung in der Terminologie. Alles heißt jetzt GraalVM. GraalVM ist im Grunde genommen ein Oberbegriff für verschiedene Technologien. Einer von ihnen ist der GraalVM-Compiler, den wir bei Twitter verwenden. Dann gibt es noch Truffle, ein Framework zur Implementierung von Sprachlaufzeiten. Außerdem wäre da noch GraalVM Native Image. Viele Leute sind daran interessiert, weil man Java-Code in eine nativ ausführbare Datei kompilieren kann.Es gibt unterschiedliche GraalVM-Distributionen. Eine davon heißt Community Edition; sie ist Open Source und kann in der Entwicklung und Produktion frei verwendet werden. Dann gibt es noch die Enterprise Edition, bei der man eine Lizenzgebühr zahlen muss, um sie in der Produktion zu verwenden.JM: Welche Edition verwendet ihr bei Twitter? Und warum habt ihr euch für Graal entschieden?Thalinger: Bei Twitter verwenden wir nur einen GraalVM-Compiler. Wir verwenden also nicht einmal einen GraalVM Build. Wir haben unseren eigenen Build von OpenJDK, das Graal enthält und das wir von GitHub erhalten. Dafür gibt es zwei Gründe:Erstens ist es ein viel einfacherer und leichter zu verstehender Compiler. Die meisten Dienste auf Twitter sind in Scala geschrieben, sodass wir Scala-spezifische Compileroptimierungen durchführen können. Ein Kollege von mir tut das.Ein weiterer Grund ist, dass wir durch den Einsatz viel Geld sparen. Ich kann nicht sagen, wie viel, aber es ist viel.JM: Gab es auch Schwierigkeiten, als du mit dem Einsatz begonnen hast, und wie hast du sie überwunden?Thalinger: Ja, ein paar gab es. Ich würde vorschlagen, sich die YouTube-Aufzeichnung meines Vortrags anzusehen, weil ich dort ins Detail gehe. Ich spreche über all die Fehler, die wir gefunden haben, und darüber, worin sie bestanden. So haben wir von Anfang an einige Fehler gefunden, die wir aber mit Hilfe von Oracle Labs behoben haben. Wir hatten jetzt seit drei Jahren keinen Bug mehr. Es ist alles sehr stabil. Ein Großteil der heutigen Twitter-Infrastruktur, unsere Microservices, laufen in der Produktion zu 100 Prozent auf Graal. Alles, was man heute twittert, wird durch Code verarbeitet, der zum Beispiel von Graal zusammengestellt wurde.Die anderen Probleme, die wir hatten, waren keine technischen Probleme. Es ging eher darum, dass ich zu Twitter kam, wo mich niemand kannte, und die Leute bat, einen neuen Compiler auszuprobieren. Das war eher ein soziologisches Problem.JM: Wie hast du sie überzeugt?Thalinger: Ich bin sehr gu...

Java Magazin
Interview mit Chris Thalinger

GraalVM: Begriffsentwirrung

Java Magazin: Hallo Chris, ein paar Fragen zu Graal an dich. Zunächst einmal: Was ist Graal und welche Editionen sind verfügbar?

Chris Thalinger


Chris Thalinger: Es gibt ein wenig Verwirrung in der Terminologie. Alles heißt jetzt GraalVM. GraalVM ist im Grunde genommen ein Oberbegriff für verschiedene Technologien. Einer von ihnen ist der GraalVM-Compiler, den wir bei Twitter verwenden. Dann gibt es noch Truffle, ein Framework zur Implementierung von Sprachlaufzeiten. Außerdem wäre da noch GraalVM Native Image. Viele Leute sind daran interessiert, weil man Java-Code in eine nativ ausführbare Datei kompilieren kann.Es gibt unterschiedliche GraalVM-Distributionen. Eine davon heißt Community Edition; sie ist Open Source und kann in der Entwicklung und Produktion frei verwendet werden. Dann gibt es noch die Enterprise Edition, bei der man eine Lizenzgebühr zahlen muss, um sie in der Produktion zu verwenden.JM: Welche Edition verwendet ihr bei Twitter? Und warum habt ihr euch für Graal entschieden?Thalinger: Bei Twitter verwenden wir nur einen GraalVM-Compiler. Wir verwenden also nicht einmal einen GraalVM Build. Wir haben unseren eigenen Build von OpenJDK, das Graal enthält und das wir von GitHub erhalten. Dafür gibt es zwei Gründe:Erstens ist es ein viel einfacherer und leichter zu verstehender Compiler. Die meisten Dienste auf Twitter sind in Scala geschrieben, sodass wir Scala-spezifische Compileroptimierungen durchführen können. Ein Kollege von mir tut das.Ein weiterer Grund ist, dass wir durch den Einsatz viel Geld sparen. Ich kann nicht sagen, wie viel, aber es ist viel.JM: Gab es auch Schwierigkeiten, als du mit dem Einsatz begonnen hast, und wie hast du sie überwunden?Thalinger: Ja, ein paar gab es. Ich würde vorschlagen, sich die YouTube-Aufzeichnung meines Vortrags anzusehen, weil ich dort ins Detail gehe. Ich spreche über all die Fehler, die wir gefunden haben, und darüber, worin sie bestanden. So haben wir von Anfang an einige Fehler gefunden, die wir aber mit Hilfe von Oracle Labs behoben haben. Wir hatten jetzt seit drei Jahren keinen Bug mehr. Es ist alles sehr stabil. Ein Großteil der heutigen Twitter-Infrastruktur, unsere Microservices, laufen in der Produktion zu 100 Prozent auf Graal. Alles, was man heute twittert, wird durch Code verarbeitet, der zum Beispiel von Graal zusammengestellt wurde.Die anderen Probleme, die wir hatten, waren keine technischen Probleme. Es ging eher darum, dass ich zu Twitter kam, wo mich niemand kannte, und die Leute bat, einen neuen Compiler auszuprobieren. Das war eher ein soziologisches Problem.JM: Wie hast du sie überzeugt?Thalinger: Ich bin sehr gu...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang