<a id="wasm-wasmtime"></a>

# Wasmtime

O módulo fornece integração com o runtime [Wasmtime](https://wasmtime.dev/)
para executar código WASM,
adicionando várias diretivas específicas do runtime
ao contexto [wasm_modules](https://pt.angie.software//angie/docs/configuration/modules/wasm/index.md#wasm-modules).

Em nossos repositórios, o módulo é construído
[dinamicamente](https://pt.angie.software//angie/docs/installation/index.md#install-dynamicmodules)
e está disponível como um pacote separado chamado `angie-module-wasmtime`.

<a id="configuration-example-77"></a>

## Exemplo de Configuração

```nginx
wasm_modules {

    wasmtime_stack_size 8k;

    wasmtime_enable_wasi on;

    load fft_transform.wasm id=fft;
}
```

<a id="directives-86"></a>

## Diretivas

<a id="index-0"></a>

<a id="wasmtime-enable-wasi"></a>

### wasmtime_enable_wasi

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `wasmtime_enable_wasi` `on` | `off`;   |
|-------------------------------------------------------------------------------------------|----------------------------------------|
| Padrão                                                                                    | `wasmtime_enable_wasi on;`             |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | wasm_modules                           |

Habilita ou desabilita o uso das
APIs da [WebAssembly System Interface](https://github.com/WebAssembly/WASI)
que fornecem [funcionalidade básica similar ao POSIX](https://wasi.dev/interfaces)
para módulos WASM executando no Angie.

#### NOTE
APIs específicas do Angie podem ser explicitamente permitidas usando a diretiva [load](https://pt.angie.software//angie/docs/configuration/modules/wasm/index.md#load).

<a id="index-1"></a>

<a id="wasmtime-stack-size"></a>

### wasmtime_stack_size

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `wasmtime_stack_size` size;   |
|-------------------------------------------------------------------------------------------|-------------------------------|
| Padrão                                                                                    | `wasmtime_stack_size 8k;`     |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | wasm_modules                  |

Define o valor
[max_wasm_stack](https://docs.wasmtime.dev/api/wasmtime/struct.Config.html#method.max_wasm_stack)
para o [tamanho](https://pt.angie.software//angie/docs/configuration/configfile.md#syntax) especificado,
limitando assim a quantidade máxima de espaço de pilha disponível para executar código WASM.
