Re: Re: nginx и потребление памяти
Maxim Dounin
mdounin на mdounin.ru
Ср Авг 19 12:51:36 UTC 2015
Hello!
On Tue, Aug 18, 2015 at 10:20:33PM +0300, Anton Kiryushkin wrote:
> Есть ли какая-то формула для подсчета буферов, исходя из примерного размера
> backend-upstream и числа запросов к серверу/величины трафика. К сожалению,
> пока так и не удалось найти баланс. И да, я имею ввиду proxy_byffers и
> proxy_buffer_size.
По очевидным причинам не имеет смысла делать суммарный размер
буферов больше, чем максимальный размер ответа бекенда. Ну и
сильно меньше, чем тратится памяти на обработку запроса, тоже нет
смысла ставить (e.g., при больших ответах и включённом gzip'е
можно быть уверенным, что zlib съест килобайт 300 на сжатие, и
соответственно буфера можно смело поднимать до сравнимых
размеров). В остальном - каких-либо внятных формул мне не
известно.
Я обычно поступаю импирически: смотрю в error log, и постепенно
поднимаю буфера так, чтобы сообщения о буферизации на диск более
или менее пропали (== буферизация на диск затрагивала бы не более
процента всех запросов), и при этом рабочие процессы nginx'а
потребляли не более половины памяти сервера (если не будет запаса
свободной памяти - будут проблемы с обновлением конфигурации
nginx'а, не говоря уже о проблемах с кешированием файловых
операций).
--
Maxim Dounin
http://nginx.org/
Подробная информация о списке рассылки nginx-ru