10 Punkte von GN⁺ 2024-11-15 | 1 Kommentare | Auf WhatsApp teilen
  • Spin ist ein Open-Source-Entwicklungstool, mit dem sich serverlose WebAssembly-(Wasm-)Anwendungen überall erstellen, bereitstellen und ausführen lassen
  • Kleine portable Binärdateien, geringe Startlatenz und hoher Durchsatz ermöglichen den Einsatz von Anwendungen in unterschiedlichsten Umgebungen

Highlights von Spin 3.0

  • Dank der Leichtgewichtigkeit von Wasm, schneller Startzeiten und Sicherheit eignet es sich gut für serverseitige Anwendungsfälle, insbesondere wenn Container zu langsam oder zu groß sind, Sandboxing zwingend erforderlich ist oder serverlose Use Cases im Vordergrund stehen
  • Das WebAssembly Component Model standardisiert die Interoperabilität zwischen verschiedenen Programmiersprachen und eröffnet Entwicklern mehr Möglichkeiten
  • Komponentenabhängigkeiten – einfacheres mehrsprachiges Programmieren
    • Spin 3.0 führt Entwicklungs-Workflows ein, bei denen sich zum Beispiel eine in Rust geschriebene Bibliothek als Abhängigkeit in einer JavaScript-Anwendung verwenden lässt.
    • Komponenten können in OCI-Registries gespeichert, gesucht und abgerufen werden und bieten damit eine Erfahrung ähnlich wie bei npm/NuGet/crates.io.
  • Selektive Bereitstellung – einmal bauen und gezielt bereitstellen
    • Einige Komponenten einer Spin-Anwendung können lokal oder über SpinKube ausgeführt werden.
    • Mit dem Flag spin up --component-id lässt sich festlegen, welche Komponente ausgeführt werden soll. Dadurch entstehen neue Szenarien, in denen Platform Engineers Komponenten gezielt auf Nodes mit bestimmten Anforderungen ausführen können.
  • Tiefe Integration mit dem WASI-Standard
    • Das Spin-Projekt trägt zu den WASI-APIs bei und integriert sie in Spin, um die Anforderungen der Community zu erfüllen.
    • Die WASI-Key-Value- und WASI-Config-APIs werden von Spin offiziell unterstützt.
  • OpenTelemetry-(OTel-)Integration – Observability inklusive
    • Spin 3.0 unterstützt OpenTelemetry-(OTel-)Observability offiziell und kann mit Tools wie Grafana, Jaegar und Prometheus integriert werden.
    • Mit dem Plugin spin otel lässt sich ein Observability-Stack einfach einrichten.
  • Spin Factors – großes Runtime-Refactoring
    • Die interne Struktur von Spin wurde mit einer Funktion namens Spin Factors umfassend refaktoriert, um die Modularität zu stärken.
    • Die Erweiterung der Spin-Runtime ist einfacher geworden; dafür ist zwar ein Fork des Projekts nötig, aber es ist möglich.
  • Demo – Einsatz von Spin 3.0
    • Es wird ein Beispiel gezeigt, bei dem mit der Komponentenabhängigkeitsfunktion von Spin 3.0 eine Bildkonvertierungskomponente in Rust erstellt und anschließend als Abhängigkeit in einer JavaScript-/TypeScript-Komponente verwendet wird.
    • Mit dem Plugin spin deps lassen sich Komponenten in einer OCI-Registry veröffentlichen und anschließend von in anderen Sprachen geschriebenen Wasm-Komponenten nutzen.
  • Stand des Ökosystems
    • Es erscheinen mehrere CLI-Plugins und Trigger-Plugins, außerdem gibt es neue Releases des SpinKube-Projekts.
    • Neue Funktionen, darunter selektive Bereitstellung, wurden hinzugefügt.

1 Kommentare

 
ragingwind 2024-11-15

OTel scheint jetzt Standard zu sein