Taction Blog

take action

Spin up 源码分析

通过之前文章,大概对fermyon平台架构有了了解。我们知道通过`spin up [-f path/to/spin.toml]`命令可以“启动”一个wasm程序,但是在这个过程中实际执行的代码逻辑是什么?我们的网络请求发给了谁,如何传递到wasm程序的?接下来从实际的代码执行角度来看下这个过程中的实际代码逻辑。实际上这里大概分为了两个大步骤,spin up命令对参数进行解析,根据启动时指定的是file(默认)还是bindle来进行不同的数据解析准备,最终通过spin trigger命令来进行实际动作。(从这个角度来看spin up就是为了方便命令行使用的用户友好的封装)

Spin介绍

Spin是一个使用WebAssembly组件构建和运行事件驱动的微服务应用程序的框架。即用于实际执行WebAssembly程序。 通过[这个案例](https://www.fermyon.com/blog/scale-to-zero-problem?&utm_medium=blog&utm_campaign=related)也能更多看到fermyon的具体架构。简单的画了一下其架构