socket_buffer_size

Директива `wasm_socket_buffer_size` задаёт размер буфера сокета для Wasm-модулей в NGINX.

Синтаксисwasm_socket_buffer_size size;
По умолчаниюnone
Контекст
Аргументы1

Описание

Директива wasm_socket_buffer_size является частью модуля NGINX Proxy-Wasm и позволяет задать размер буфера для сокетных коммуникаций, обрабатываемых модулями WebAssembly (Wasm). При указании директивы она настраивает объём памяти, выделяемой для буфера, используемого при операциях с сокетами, таких как чтение из сокетов или запись в них. Это помогает оптимизировать производительность в зависимости от ожидаемой нагрузки данных и взаимодействий с upstream-серверами или клиентами.

Директива принимает один аргумент, указывающий размер буфера, который можно задавать с помощью стандартных суффиксов размера (например, k — для килобайт, m — для мегабайт), что позволяет конфигурировать разные размеры в соответствии с потребностями приложения. Корректная настройка этого значения может предотвратить превращение сокетов в узкие места при сценариях с высокой пропускной способностью, особенно в средах с частыми операциями, чувствительными к задержкам. Неправильная настройка или слишком низкие значения по умолчанию могут привести к потере пакетов или неудачным запросам, тогда как чрезмерно большие размеры буферов могут привести к неэффективному использованию памяти.

Важно включать wasm_socket_buffer_size в блок http вашей конфигурации NGINX — она действует для всех Wasm-модулей, инстанцированных в этом контексте. Поэтому при выборе размеров буферов следует учитывать совокупные требования к системе сокетов, предъявляемые развернутыми Wasm-модулями.

Пример конфига

http {
    wasm_socket_buffer_size 8k;
    # Further configuration for Wasm modules... 
}

Убедитесь, что размер буфера задан внутри контекста http, так как размещение его в другом месте приведёт к ошибке.

Избегайте установки размеров буфера, которые значительно превышают типичные сетевые полезные нагрузки, поскольку это может привести к перерасходу памяти.

Учитывайте компромиссы в производительности между задержкой и пропускной способностью при выборе размера буфера.

← Ко всем директивам