conference logo

Playlist "Chemnitzer Linux-Tage 2023"

WebAssembly auf der Serverseite: Was ist WASI?

Pascal Fries

Seit seiner offiziellen Standardisierung 2019 ermöglicht WebAssembly Module das Ausführen clientseitiger Anwendungen in der Browser-Runtime bei fast-nativer Geschwindigkeit. Doch wie sieht es, ganz im Sinne von NodeJS, auf der Serverseite aus? Dort verspricht eine WebAssembly-Runtime schnelle Startzeiten, geringen Overhead, sowie eine Sandbox genau wie im Browser. Durch diese Effizienz – wir sprechen hier von wenigen Millisekunden Startzeit – stellen WebAssembly-Module sogar Container in den Schatten, wenn es um massive Skalierbarkeit und damit effiziente Ressourcennutzung geht.

Damit das aber möglich wird, braucht es Wege zur Interaktion mit dem System, beispielsweise um Ports zu öffnen oder auf ausgewählte Dateien zuzugreifen. Dieses „WebAssembly System Interface“ ist zwar noch im Alpha-Stadium, allerdings lassen sich bereits jetzt Anwendungen damit entwickeln.

In meinem Vortrag stelle ich bereits etablierte Ideen und Konzepte hinter serverseitigem WebAssembly vor. Dabei betrachten wir anhand konkreter Beispiele die Themen Entwicklung, Deployment und Orchestrierung und diskutieren auch die Grenzen aktueller Plattformen wie Kubernetes im Bezug auf WebAssembly.