Wasmtime#

该模块支持与 Wasmtime 运行时集成,以执行 WASM 代码,并为 wasm_modules 上下文添加一些运行时特定的指令。

在我们的仓库中,该模块是 动态构建 的,并作为一个名为 angie-module-wasmtime 的独立软件包提供。

配置示例#

wasm_modules {

    wasmtime_stack_size 8k;

    wasmtime_enable_wasi on;

    load fft_transform.wasm id=fft;
}

指令#

wasmtime_enable_wasi#

语法

wasmtime_enable_wasi on | off;

默认值

wasmtime_enable_wasi on;

上下文

wasm_modules

启用或禁用 WebAssembly System Interface APIs,这些接口为在 Angie 上运行的 WASM 模块提供基本的 类 POSIX 功能

备注

可以使用 load 指令将 Angie 特定的 API 加入白名单。

wasmtime_stack_size#

语法

wasmtime_stack_size size;

默认值

wasmtime_stack_size 8k;

上下文

wasm_modules

设置 max_wasm_stack 值为指定的 size,从而限制执行 WASM 代码时可用的最大堆栈空间。