imap_client_buffer

Директива `imap_client_buffer` задаёт размер буфера для IMAP-клиентских подключений в NGINX Mail.

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

Описание

Директива imap_client_buffer в модуле NGINX Mail позволяет задать размер буфера, выделяемого для каждого IMAP-клиентского подключения. Этот буфер используется для хранения данных, полученных от клиента, перед их обработкой. Указав больший буфер, вы можете учесть клиентов, отправляющих более крупные команды или ответы, что может повысить производительность за счёт уменьшения количества операций чтения.

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

Эту директиву следует использовать внутри контекстов mail или mail server, чтобы она применялась к нужной конфигурации почтового сервиса. Если она не задана, это может привести к неэффективности, особенно в средах, где несколько IMAP-клиентов активно взаимодействуют с сервером.

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

mail {
    imap_client_buffer 512k;
}

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

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

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