scgi_buffering
Директива 'scgi_buffering' включает или отключает буферизацию ответов от SCGI-серверов в NGINX. — NGINX HTTP Core
Описание
Директива 'scgi_buffering' управляет тем, буферизует ли NGINX ответы от SCGI (Simple Common Gateway Interface) серверов перед отправкой клиенту. По умолчанию NGINX буферизует эти ответы, что может повысить производительность за счёт отправки полного объёма ответа за одну передачу. Если буферизация включена и ответ превышает настроенный размер буфера, NGINX запишет данные во временный файл, если они превышают этот предел. Напротив, если буферизация отключена, NGINX будет немедленно передавать данные ответа клиенту по мере их получения от SCGI-сервера, что может быть полезно для длинных ответов или потоковых приложений, где низкая задержка имеет приоритет. Директива принимает аргумент-флаг, который может быть 'on' или 'off'.
Пример конфига
server {
location /app {
scgi_pass 127.0.0.1:9000;
scgi_buffering off;
}
}Отключение буферизации может привести к снижению производительности при высокой нагрузке, поскольку потоковые ответы могут быть менее эффективными, чем буферизованные.
Убедитесь, что сервер SCGI способен обрабатывать немедленные ответы, отправляемые NGINX, когда буферизация отключена.