Ответ 1
Как nginx может записывать большие файлы на диск перед отправкой их клиенту, часто бывает полезно отключить этот кеш, если сайт будет обслуживать большие статические файлы, с чем-то вроде:
location / {
proxy_max_temp_file_size 0;
}
Простой вопрос
http://mysite.com/bigFile.avi # этот файл составляет 800 МБ
когда я использую эту ссылку и загружаю файл bigFile.avi из моего браузера, Мой сервер Nginx перескакивает до 100% загрузки процессора во время сеанса загрузки, статического содержимого, без php. (обычные скрипты php используют 1-3% CPU)
Интересно, нормально ли это для моего сервера? Он потребляет столько CPU, чтобы обслуживать большие файлы?
(я даже отключил gzip в конфигурации nginx, но не сильно отличался)
Как nginx может записывать большие файлы на диск перед отправкой их клиенту, часто бывает полезно отключить этот кеш, если сайт будет обслуживать большие статические файлы, с чем-то вроде:
location / {
proxy_max_temp_file_size 0;
}
Взгляните на эти статьи
Я признаю, что некоторые из них вне меня. Но вкратце они предлагают отключить sendfile, включить aio и увеличить выходные буферы, если вы отправляете большие ( > 4 МБ) файлы. То, что я забрал, состоит в том, что большинство конфигураций сервера по умолчанию предполагают, что будет отправлено множество небольших файлов, а не несколько или много больших файлов. Эти два разных сценария могут потребовать разработки очень разных конфигураций.