A Fermyon, empresa líder em soluções de desenvolvimento de aplicativos baseados em WebAssembly, acaba de lançar uma atualização significativa para sua ferramenta de código aberto, o Spin. A versão 3.0 do Spin traz novos recursos e melhorias que visam facilitar ainda mais o desenvolvimento de aplicativos rápidos, seguros e componíveis na nuvem.
Uma das principais novidades do Spin 3.0 é o suporte a programação poliglota. Essa funcionalidade permite que os desenvolvedores escrevam componentes em diferentes linguagens de programação e os utilizem como dependências em seus aplicativos Spin. Isso significa que é possível, por exemplo, criar uma biblioteca de computação intensiva em Rust e usá-la em um aplicativo JavaScript, tudo dentro do ecossistema Spin.
Segundo a Fermyon, essa abordagem de programação poliglota é alcançada por meio do uso de dependências de componentes, que podem ser armazenadas, descobertas e buscadas em registros OCI (Open Container Initiative). Essa experiência é semelhante àquela encontrada em ecossistemas como npm, NuGet ou crates.io, mas agora aplicada ao desenvolvimento de aplicativos baseados em WebAssembly.
Além do suporte a programação poliglota, o Spin 3.0 também traz outras melhorias significativas:
Suporte a WASI
O Spin 3.0 apresenta uma integração mais profunda com os padrões WASI (WebAssembly System Interface), incluindo suporte para as APIs WASI Key-Value e WASI Config. Esse avanço é um passo importante em direção à introdução do núcleo de nuvem WASI do Spin, uma proposta WASI para padronizar um conjunto de APIs que os aplicativos podem usar para interagir com serviços de nuvem comuns.
Observabilidade com OpenTelemetry
O Spin 3.0 também introduz suporte para observabilidade OpenTelemetry (OTel) em aplicativos Spin. Isso permite que os desenvolvedores monitorem e analisem o desempenho de seus aplicativos Spin usando ferramentas populares como Grafana, Jaeger e Prometheus.
Spin Factors
O lançamento do Spin 3.0 também apresenta uma grande refatoração dos internos do Spin, com a introdução de um recurso chamado Spin Factors. Os Spin Factors encapsulam funcionalidades específicas do host, tornando o tempo de execução do Spin mais modular e flexível.
Melhorias na experiência do desenvolvedor
Além dos novos recursos, o Spin 3.0 também traz melhorias na experiência do desenvolvedor, como o sinalizador experimental spin up --component-id
, que permite que os desenvolvedores especifiquem quais componentes executar em um aplicativo Spin.
O Spin é posicionado pela Fermyon como uma estrutura para construir e executar microsserviços rápidos, seguros e componíveis baseados em nuvem com WebAssembly. O Spin 3.0 segue o Spin 2.0, lançado há um ano, com foco na experiência do desenvolvedor e no desempenho do tempo de execução. O Spin 1.0 chegou em março de 2022.
Com essa atualização, a Fermyon reafirma seu compromisso em fornecer aos desenvolvedores ferramentas cada vez mais poderosas e flexíveis para a construção de aplicativos modernos na nuvem, aproveitando todo o potencial do WebAssembly.