Spin 项目团队发布了一份 2025 全年总结。
Spin 是一个用于构建和运行基于 WebAssembly(Wasm)组件的事件驱动微服务应用程序的框架。年初,Spin 加入了 Cloud Native Computing Foundation(CNCF)作为 Sandbox 项目。年末则发布了第一个 WASIp3 候选版本;文章指出,这是一个重要的技术节点,涉及 Spin 运行时和相关 SDK 的大量工作。
在这两端之间,Spin 持续稳步演进。运行时、触发器、SDK 和工具链都有持续的功能更新、优化和体验提升。虽然很多改进单独看很小,但合起来显著提升了构建、运行和管理 Spin 应用的整体体验。
展望未来
随着代码库日趋成熟、贡献者社区不断壮大,且 WASIp3 候选版本现已发布,Spin 将在新的一年里继续夯实已有基础。
未来几个月将继续推进 WASIp3 的稳定工作。虽然候选版是重要里程碑,实际使用反馈、API 优化和迁移路径改进将决定下一步的方向,这也将与上游 WASI 开发紧密对齐。
Spin 还将重点提升开发者体验和运维质量,通过工具和流程的渐进改进,帮助用户更容易采用新功能,同时保证系统稳定。以下是项目主要的目标概览:
WASIp3 最终版本
下一版 WASIp3 预计是 Preview 3 阶段的收官之作,重心将逐步转向更广泛的 WASI 1.0 工作。随着工作收敛,WASIp3 将从快速迭代转向整合与长期支持。
一旦上游 WASIp3 稳定,Spin 计划取消在执行器和 SDK 中对 WASIp3 的实验性限制,标志着它由实验支持转为平台的稳定组成部分。
实例复用
WASIp3 引入了组件可以异步处理多个请求的执行模型,支持单实例内多任务并进。这改变了传统的“一次调用即结束”的模式,走向长生命周期、可复用组件。
Spin 也在向这个模型靠拢,默认启用 WASIp3 组件的实例复用,提高吞吐量和资源利用率。早期 WASI 模型不支持此设计,仍采用更保守的处理方式。
实例复用功能将带有合理默认配置,同时支持用户根据负载和性能需求调整或关闭。
该功能计划在下一版本发布,目前已在 canary 版本中可用。
目标环境(Target Worlds)
Spin 应用已经支持部分只在特定环境生效的功能,如定制触发器或本地服务链等主机能力。但目前 Spin 无法声明应用的部署环境,也无法提前校验兼容性,导致兼容性问题可能只在运行时暴露。
目标环境功能旨在明确这些部署预期,并在构建阶段进行检查。
中间件
WASIp3 承诺实现可组合的 HTTP 处理,打破 WASIp2 中请求与响应的非对称限制。这简化了构建 HTTP 中间件组件——即在 HTTP 管道中验证和增强请求或响应的组件。认证授权是典型场景,CORS 等也是。
2026 年希望支持声明式 HTTP 中间件,允许开发者通过清单文件使用自定义或现成组件表达 HTTP 管道。
依赖管理
一年多前,Spin v3.0 引入了组件依赖支持,奠定了多语言混合使用的基础。新的一年将聚焦提升依赖管理的开发体验,打造更符合大多数开发者习惯的原生体验。
目前已在 spin deps 插件做过初步尝试,2026 年计划持续迭代改进,并将其集成到 Spin 命令行中。同时,项目团队也在探索便于依赖开发的工作流程。