memc_buffer_size

Директива `memc_buffer_size` задаёт размер буфера, используемого для данных, получаемых от сервера memcached.

Синтаксисmemc_buffer_size size;
По умолчанию1m
Контекстhttp, server, location
Аргументы1

Описание

Директива memc_buffer_size является частью модуля ngx_memc, который предоставляет расширенные возможности для взаимодействия с Memcached. Эта директива указывает максимальный размер буфера, выделяемого для приёма данных от сервера Memcached после выполнения запроса. Когда клиент отправляет запрос на получение или изменение данных, хранящихся в Memcached, сервер отвечает запрошенными данными, и эти данные буферизуются NGINX в соответствии с размером, определённым в memc_buffer_size.

Эта директива особенно полезна в сценариях, когда из Memcached извлекаются большие объёмы данных, позволяя серверу эффективнее обрабатывать крупные полезные нагрузки без проблем с выделением памяти. Правильный выбор размера буфера гарантирует, что ответы не превысят заданный лимит, что могло бы привести к усечению данных или прерыванию сервиса. Регулировка этого значения может оптимизировать производительность для приложений, которые часто обращаются к большим наборам данных в Memcached.

Размер буфера задаётся в контексте блоков http, server или location и принимает один аргумент, как правило выраженный в байтах, с суффиксами K, M или G для килобайт, мегабайт или гигабайт соответственно. Значение должно быть корректным положительным целым числом, определяющим общий размер буфера, используемого при взаимодействии с серверами Memcached.

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

location /foo {
    set $memc_key $arg_key;
    memc_buffer_size 2m;
    memc_pass 127.0.0.1:11211;
}
⚠

Установка слишком малого размера буфера может привести к тому, что из Memcached будут прочитаны неполные данные, особенно для крупных объектов.

⚠

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

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