Сервер статического контента Nginx исчерпал себя?
Я использую nginx для обслуживания статического контента для моего прилично загруженного сайта. У меня отключено ведение журнала и 4 рабочих процесса с 5000 подключений на одного работника (что должно привести к максимальному пределу подключения 20 000).
Сервер работает только при 10% загрузки ЦП и 50% оперативной памяти, но он очень запаздывает, а иногда nginx так медленно реагирует на запросы, что время ожидания истекает. Для небольшого числа соединений это нормально, но как только начинается какая-либо нагрузка (~2500 соединений), она выполняет резервное копирование и отключается.
Есть ли какие-либо другие узкие места или ограничения, которые я мог бы нарушить? Это сервер FreeBSD, и все статические файлы расположены локально (не NFS). NIC - это неизмеримый гигабит, и он использует только около 75 мегабит.
Любое понимание будет оценено. Благодарю.
1 ответ
Некоторые подсказки, где смотреть:
- Вы должны включить ведение журнала ошибок и заглядывать туда все время. Это дает много информации.
- Что такое дооснащение ввода-вывода?
- У вас установлен Munin? Графики Мунина также дают много информации.
- У вас включен модуль nginx-status в Nginx? Если да, то какие цифры это показывает?
- Какие еще приложения работают на вашем сервере? Пусть они влияют на производительность
- Какой тип статических файлов вы обслуживаете? Конкретно какого размера