В среднем строк 50-70 в секунду, нагрузка на проц небольшая.. но
приконнектиться к nginx'у трудно, часто возникают таймауты, как их
избежать? То что он отбивает левые запросы этой дос атаки это хорошо, но
вот остальное плоховато. Судя по снифферу к серверу идет в среднем по
800 syn пакетов на 80 порт в секунду. Иногда больше.
Есть ли какие-нибудь ошибки на уровне alert и crit ?
А какая ОС ? У меня nginx на FreeBSD 4.10 с polling'ом обрабатывает
2000 запросов в секунду на P3-650 с загрузкой 50-60%.
Другох ошибок нет, использую Linux /2.4.30/rtsig сервер Dual Xeon 2400,
4Gb RAM, нагрузка от nginx'а меньше чем 1-2%
А загрузка машины вообще ? Сколько остаётся idle ?
80-90% idle, загрузка почти никакая. Сейчас дос прекратился.. и до следующего
раза все ок. Тем неменее, надо будет все проэмулировать и сделать чтобы
обрабатывалось большее число подключений.
Моё видение подобных ситуаций такое - если nginx не ест процессор
и не пишет ничего в лог на уровне alert и crit, то это означает, что ОС
просто не даёт ему выполнятся. Причины, по которым это может происходить -
разные:
1) событий нет;
2) ОС не считает нужным их передавать, например, дропает соединения,
потому что нет памяти под сокеты и тому подобное;
3) ОС ждёт диск;
4) что-то ещё.
Для FreeBSD я знаю, как можно находить узкие места и чего нужно подкрутить
в таких ситуациях. Для Линукса - не знаю.
Игорь Сысоев
http://sysoev.ru