Сервер статического контента Nginx исчерпал себя?

Я использую nginx для обслуживания статического контента для моего прилично загруженного сайта. У меня отключено ведение журнала и 4 рабочих процесса с 5000 подключений на одного работника (что должно привести к максимальному пределу подключения 20 000).

Сервер работает только при 10% загрузки ЦП и 50% оперативной памяти, но он очень запаздывает, а иногда nginx так медленно реагирует на запросы, что время ожидания истекает. Для небольшого числа соединений это нормально, но как только начинается какая-либо нагрузка (~2500 соединений), она выполняет резервное копирование и отключается.

Есть ли какие-либо другие узкие места или ограничения, которые я мог бы нарушить? Это сервер FreeBSD, и все статические файлы расположены локально (не NFS). NIC - это неизмеримый гигабит, и он использует только около 75 мегабит.

Любое понимание будет оценено. Благодарю.

1 ответ

Решение

Некоторые подсказки, где смотреть:

  • Вы должны включить ведение журнала ошибок и заглядывать туда все время. Это дает много информации.
  • Что такое дооснащение ввода-вывода?
  • У вас установлен Munin? Графики Мунина также дают много информации.
  • У вас включен модуль nginx-status в Nginx? Если да, то какие цифры это показывает?
  • Какие еще приложения работают на вашем сервере? Пусть они влияют на производительность
  • Какой тип статических файлов вы обслуживаете? Конкретно какого размера
Другие вопросы по тегам