© saicle/Shutterstock.com
PHP Magazin
Interview mit Johann-Peter Hartmann über JavaScript, Skalierung und Microservices

Interview mit Johann-Peter Hartmann über JavaScript, Skalierung und Microservices

JavaScript und die Skalierung - kann das wirklich gut gehen? Oder sind wir vielleicht sogar schon am Ziel angelangt? Und welche Rolle spielen Node.js und Docker in dieser Geschichte? Skaliert Node.js? Ja, natürlich. Aber wie ist das mit JavaScript im Allgemeinen? Was passiert, wenn man wirklich skalieren möchte, und das weit über die Grenze eines Servers? Über die eines Clusters? Das sind natürlich spannende und vor allem wichtige Fragen - gerade in einer Zeit, in der vor allem die Applikation vorne mitspielt, die schnell mit der Anzahl der Benutzer mitwachsen kann. Mit genau diesem Thema beschäftigt sich Johann-Peter Hartmann. Grund genug für uns, um etwas Licht ins Dunkel zu bringen.

Johann-Peter Hartmann


PHP Magazin: Johann, in der heutigen Zeit dreht sich alles um Skalierung. Eine Applikation, die schnell mit der Zahl der Benutzer mitwachsen kann, kann leicht vorne mitspielen. Wie schlägt sich JavaScript in diesem Umfeld?Johann-Peter Hartmann: Historisch betrachtet spielt JavaScript in diesem Umfeld aus purem Versehen mit. Das ganze Sprachdesign wurde an einer komplett anderen Aufgabenstellung entlang entworfen, bei der es deutlich mehr um Entwicklungsgeschwindigkeit, einfache Zugänglichkeit von Funktionalität und die Fähigkeit, Dinge als Glue-Code zu verdrahten, ging. Bei wirklich großen Plattformen würde man eigentlich eine typfeste Sprache erwarten, bei der sich die Engine die kontinuierliche Typevaluation und das Casting sparen kann. Eine Sprache wie Java – mit festen Typen, bei der sowohl in der Kompilierung als auch in der JVM deutlich mehr Intelligenz steckt als in allem, was bei JavaScript geplant war – ist eigentlich für solche Aufgaben gemacht.Leider – oder glücklicherweise, aus heutiger Sicht – hat sich das bei JavaScript geändert. Mit dem Web 2.0 wanderte die Applikationswelt in weiten Teilen in das Web, und JavaScript wurde die GUI-Sprache Nummer 1, sodass am Ende der Browser-War zum JavaScript-Engine-War wurde – und uns mit so hervorragenden JavaScript Engines wie Google V8, Nitro und Chakra beglückt hat. Und wir sind noch lange nicht am Ende der Fahnenstange angekommen, wie die inzwischen solide Verbreitung von asm.js-Unterstützung in den Browsern zeigt; dort ist man schon bei 50 Prozent der Performance vom optimierten C-Kompilat angekommen.Für Start-ups ist das wunderbar: Ich habe nicht nur die einfache Zugänglichkeit und die hohe Entwicklungsgeschwindigkeit, sondern auch die Performance. Die Unterstützung von asynchronem Verhalten und Events, ursprünglich für langsame Netze und GUI eingeführt, erleichtern das Schreiben skalierbarer Software ebenso wie die rudimentären funktionalen Fähigkeiten, die zunächst eher eine seltsame Rolle im Sprachdesign spielten.PM: Eine besondere Rolle spielt dabei natürlich Node. js – aber auch das hat seine natürlichen Grenzen. Wie weit kann man das Spiel ohne Hilfsmittel treiben?Hartmann: Node.js ist der Stürmer, der die Bälle ins Tor bringt, die ihm der JavaScript-Engine-War zugespielt hat. Node.js, NPM und die inzwischen unglaublich reichhaltige Toolwelt im Umfeld hat JavaScript auf der Serverseite einfach und zugänglich gemacht. Und der Erfolg von Node.js zeigt, wie sehr die kleine, flexible Sprache Ja...

PHP Magazin
Interview mit Johann-Peter Hartmann über JavaScript, Skalierung und Microservices

Interview mit Johann-Peter Hartmann über JavaScript, Skalierung und Microservices

JavaScript und die Skalierung - kann das wirklich gut gehen? Oder sind wir vielleicht sogar schon am Ziel angelangt? Und welche Rolle spielen Node.js und Docker in dieser Geschichte? Skaliert Node.js? Ja, natürlich. Aber wie ist das mit JavaScript im Allgemeinen? Was passiert, wenn man wirklich skalieren möchte, und das weit über die Grenze eines Servers? Über die eines Clusters? Das sind natürlich spannende und vor allem wichtige Fragen - gerade in einer Zeit, in der vor allem die Applikation vorne mitspielt, die schnell mit der Anzahl der Benutzer mitwachsen kann. Mit genau diesem Thema beschäftigt sich Johann-Peter Hartmann. Grund genug für uns, um etwas Licht ins Dunkel zu bringen.

Johann-Peter Hartmann


PHP Magazin: Johann, in der heutigen Zeit dreht sich alles um Skalierung. Eine Applikation, die schnell mit der Zahl der Benutzer mitwachsen kann, kann leicht vorne mitspielen. Wie schlägt sich JavaScript in diesem Umfeld?Johann-Peter Hartmann: Historisch betrachtet spielt JavaScript in diesem Umfeld aus purem Versehen mit. Das ganze Sprachdesign wurde an einer komplett anderen Aufgabenstellung entlang entworfen, bei der es deutlich mehr um Entwicklungsgeschwindigkeit, einfache Zugänglichkeit von Funktionalität und die Fähigkeit, Dinge als Glue-Code zu verdrahten, ging. Bei wirklich großen Plattformen würde man eigentlich eine typfeste Sprache erwarten, bei der sich die Engine die kontinuierliche Typevaluation und das Casting sparen kann. Eine Sprache wie Java – mit festen Typen, bei der sowohl in der Kompilierung als auch in der JVM deutlich mehr Intelligenz steckt als in allem, was bei JavaScript geplant war – ist eigentlich für solche Aufgaben gemacht.Leider – oder glücklicherweise, aus heutiger Sicht – hat sich das bei JavaScript geändert. Mit dem Web 2.0 wanderte die Applikationswelt in weiten Teilen in das Web, und JavaScript wurde die GUI-Sprache Nummer 1, sodass am Ende der Browser-War zum JavaScript-Engine-War wurde – und uns mit so hervorragenden JavaScript Engines wie Google V8, Nitro und Chakra beglückt hat. Und wir sind noch lange nicht am Ende der Fahnenstange angekommen, wie die inzwischen solide Verbreitung von asm.js-Unterstützung in den Browsern zeigt; dort ist man schon bei 50 Prozent der Performance vom optimierten C-Kompilat angekommen.Für Start-ups ist das wunderbar: Ich habe nicht nur die einfache Zugänglichkeit und die hohe Entwicklungsgeschwindigkeit, sondern auch die Performance. Die Unterstützung von asynchronem Verhalten und Events, ursprünglich für langsame Netze und GUI eingeführt, erleichtern das Schreiben skalierbarer Software ebenso wie die rudimentären funktionalen Fähigkeiten, die zunächst eher eine seltsame Rolle im Sprachdesign spielten.PM: Eine besondere Rolle spielt dabei natürlich Node. js – aber auch das hat seine natürlichen Grenzen. Wie weit kann man das Spiel ohne Hilfsmittel treiben?Hartmann: Node.js ist der Stürmer, der die Bälle ins Tor bringt, die ihm der JavaScript-Engine-War zugespielt hat. Node.js, NPM und die inzwischen unglaublich reichhaltige Toolwelt im Umfeld hat JavaScript auf der Serverseite einfach und zugänglich gemacht. Und der Erfolg von Node.js zeigt, wie sehr die kleine, flexible Sprache Ja...

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