wasmer
Директива `wasmer` позволяет интегрировать модули WebAssembly в NGINX для расширенных возможностей обработки запросов.
Описание
Директива wasmer является частью модуля NGINX, который обеспечивает поддержку WebAssembly (Wasm) через Proxy-Wasm ABI. Это позволяет разработчикам запускать модули WebAssembly в окружении NGINX, расширяя его функциональность без необходимости перекомпилировать или изменять исходный код сервера. WebAssembly — это двоичный формат инструкций, который обеспечивает высокопроизводительные приложения в сети, предоставляя почти нативную скорость для веб-приложений при сохранении безопасной и переносимой среды выполнения.
При использовании директивы wasmer администраторы могут указать несколько Wasm-модулей, которые могут вызываться на различных этапах обработки запросов. Подключение этих модулей позволяет реализовать расширенные возможности, такие как пользовательская фильтрация, сбор метрик и другая логика, обрабатываемая непосредственно в рабочих процессах NGINX. Сама по себе директива не принимает аргументов, но работает в сочетании с другими связанными директивами, такими как proxy_wasm и wasm_call, эффективно оркестрируя взаимодействие между NGINX и Wasm-модулями.
Пример конфига
wasm {
module my_filter /path/to/filter.wasm;
}Убедитесь, что Wasm-модуль корректно скомпилирован для соответствующей архитектуры.
Модули должны быть оптимизированы для высокой производительности, поскольку они выполняются в контексте воркера NGINX.
Неправильные пути приведут к сбоям при загрузке модуля, проверьте путь к модулю.