Как ограничить количество выделяемой оперативной памяти на каждый проект nginx?
Есть к примеру 10 сайтов на одном сервере. Как можно задать каждому сайту свои настройки и ограничить максимальное потребление мощности сервера, количество максимальных одновременных запросов и количество максимального одновременного подключения?
Читал про общие настройки nginx.conf, но как именно задать все это на конкретный проект.
Возможно у вас есть некие дополнения, для оптимизации сервера и балансировки нагрузок помимо написанного выше. В сети не нашел нормальной статьи по такому вопросу.
В целом вопрос стоит именно в разделении проектов, чтобы один проект не влиял на другой и при сильной нагрузке выдавал ошибку или падал, только как кластер возможно, или микросервис. Надеюсь понятно объяснил вопрос)
В целом вопрос стоит именно в разделении проектов, чтобы один проект не влиял на другой и при сильной нагрузке выдавал ошибку или падал, только как кластер возможно, или микросервис.
Вы прям написали часть того - "зачем нужен Docker".
для оптимизации сервера и балансировки нагрузок помимо написанного выше
Вы прям написали часть того - "зачем нужен Kubernetes".
при сильной нагрузке выдавал ошибку или падал
Может не стоить рубить с плеча, а просто поставить ожидающих в очередь?
Вопрос некорректный - у вас же наверняка кроме nginx есть как минимум какой-то fpm и БД, соответственно нужны лимиты и на них.
Все доступные лимиты отлично гуглятся, читайте документацию и думайте-подойдет ли вам такой путь или нет.
Для нормального распределения ресурсов есть виртуализация и контейнеризация.
Даже если ставить докер, нужно же в любом случае ставить ограничения на вход nginx и отдавать ошибку при превышении лимита. Или докер может из коробки задавать подобные настройки? Меня больше интересует настройки nginx, к сожалению не смог найти то что мне нужно.