10 points par GN⁺ 2024-11-15 | 1 commentaires | Partager sur WhatsApp
  • Spin est un outil de développement open source permettant de créer, déployer et exécuter partout des applications WebAssembly (Wasm) serverless
  • Il offre de petits binaires portables, une faible latence au démarrage et un débit élevé, ce qui permet d’exécuter des applications dans des environnements variés

Points forts de Spin 3.0

  • Grâce à la légèreté de Wasm, à sa rapidité de démarrage et à sa sécurité, il convient bien aux cas d’usage côté serveur, notamment lorsque les conteneurs sont lents ou volumineux, lorsque le sandboxing est indispensable, ou pour les usages serverless
  • Le WebAssembly Component Model standardise l’interopérabilité entre différents langages de programmation, offrant davantage de possibilités aux développeurs
  • Dépendances de composants - simplicité du développement multilingue
    • Spin 3.0 introduit des workflows de développement permettant, par exemple, d’utiliser une bibliothèque écrite en Rust comme dépendance dans une application JavaScript.
    • Les composants peuvent être stockés, recherchés et récupérés depuis un registre OCI, offrant une expérience similaire à npm/NuGet/crates.io.
  • Déploiement sélectif - compiler une fois et déployer de manière ciblée
    • Certains composants d’une application Spin peuvent être exécutés en local ou via SpinKube.
    • Le flag spin up --component-id permet de spécifier le composant à exécuter et ouvre de nouveaux scénarios où les platform engineers peuvent lancer sélectivement des composants sur des nœuds répondant à des exigences spécifiques.
  • Intégration poussée avec les standards WASI
    • Le projet Spin contribue aux API WASI et les intègre dans Spin afin de répondre aux besoins de la communauté.
    • Les API WASI Key-Value et WASI Config sont officiellement prises en charge dans Spin.
  • Intégration OpenTelemetry (OTel) - observabilité incluse
    • Spin 3.0 prend officiellement en charge l’observabilité OpenTelemetry (OTel), permettant une intégration avec des outils comme Grafana, Jaegar et Prometheus.
    • Le plugin spin otel facilite la configuration de la stack d’observabilité.
  • Spin Factors - refonte majeure du runtime
    • La structure interne de Spin a été largement refactorisée autour d’une fonctionnalité appelée Spin Factors afin de renforcer sa modularité.
    • Il est désormais plus facile d’étendre le runtime de Spin, même si cela peut nécessiter un fork du projet.
  • Démo - utilisation de Spin 3.0
    • Un exemple montre comment exploiter la fonctionnalité de dépendances de composants de Spin 3.0 pour créer un composant de transformation d’images en Rust et l’utiliser comme dépendance dans un composant JavaScript/TypeScript.
    • Le plugin spin deps permet de publier des composants dans un registre OCI et de les consommer depuis des composants Wasm écrits dans d’autres langages.
  • État de l’écosystème
    • Plusieurs plugins CLI et plugins de triggers font leur apparition, et le projet SpinKube bénéficie également d’une nouvelle release.
    • De nouvelles fonctionnalités ont été ajoutées, dont le déploiement sélectif.

1 commentaires

 
ragingwind 2024-11-15

OTel est désormais apparemment la norme