DeisLabs 28.09.2021, 10:30 Uhr

Hippo: WebAssambly Platform as a Service

Das DeisLab-Team hat das Projekt Hippo angekündigt: eine selbst gehostete Open Source Platform as a Service (PaaS).
(Quelle: deislabs.io)
Hippo wurde entwickelt, um zwei Dinge zu unterstützen: Erstens soll es die Entwicklung von Anwendungen und Diensten vereinfachen. Hippo bietet eine Reihe von Werkzeugen, mit denen sich neue Ideen leicht umsetzen und testen lassen. Außerdem soll Hippo Neueinsteigern den Einstieg in die Anwendungsentwicklung erleichtern.
Zweitens soll es Teams erleichtern, den Lebenszyklus ihrer Anwendungen zu verwalten. Hippo führt ein Konzept namens "Channels" ein. Channels stellen automatisch die neueste Version auf der Grundlage der angegebenen Kriterien bereit. Sie möchten Ihre Idee in einer Staging-Umgebung testen? Erstellen Sie einen neuen "Staging"-Kanal mit dem Auswahlkriterium "*" und beobachten Sie, wie Hippo die neueste Version Ihrer Anwendung direkt vor Ihren Augen bereitstellt.
Hippo verwendet WebAssembly unter der Haube als Anwendungslaufzeit. WebAssembly ist eine Assembler-ähnliche Sprache mit einem kompakten Binärformat. Sie läuft mit nahezu nativer Leistung und bietet Sprachen ein neues Compiler-Ziel. Hippo nutzt das WebAssembly System Interface (WASI), um WebAssembly in der Cloud auszuführen. Der WASI-Überblick bietet detailliertere Hintergrundinformationen.

Die Vorteile

Hippo ist sicher. Anwendungen sind in einer Sandbox untergebracht. Anwendungen haben Zugriff auf ihren eigenen Speicheradressraum, können aber auf nichts außerhalb ihrer Sandbox-Umgebung zugreifen, es sei denn, sie werden von der Laufzeitumgebung ausdrücklich zugelassen. Dazu gehören Host-Aufrufe, Systemdateien, Bibliotheken oder Geräte.
Hippo-Anwendungen sind portabel. Wenn sie in WebAssembly kompiliert werden, ist den Anwendungen die zugrunde liegende Architektur des Betriebssystems nicht bekannt. Folglich sind Anwendungen, die in Hippo bereitgestellt werden, portabel. Wird eine Anwendung kompiliert und in Hippo bereitgestellt, kann sie ohne Änderungen unter Windows, MacOS und Linux ausgeführt werden. Mit Hippo kann man genau dieselbe Binärdatei auf einem Windows-PC kompilieren und testen, bevor man sie auf einnen Linux-Server überträgt.
Hippo ist schnell. Testergebnisse zeigen, dass das Laden einer Anwendung und die Instanziierung der WebAssembly-Laufzeit bei einem Kaltstart circa 10 ms dauert. Nach einigen Optimierungsarbeiten ließ sich die Startzeit auf bis zu 3 ms senken.
Weitere Informationen zu Hippo finden Sie hier.


Das könnte Sie auch interessieren