Все наглухо виснит
Konstantin Belov
belov1985 at gmail.com
Wed May 13 21:15:06 MSD 2009
Алексей wrote:
> Добрый день, коллеги
>
> есть 3 машины. nginx apache mysql и браузерная игра в стадии беты.
>
> Иногда все просто умирает.Все происходит при онлайне 100
> человек.Загрузка проца минимальная на всех машинах;
> Мое расследование показало что изначально висит база. чтото ее вешает.
> Апач не дожидается ответа и начинает плодить процессы и в результате у
> него воникает популярное "server reached MaxClients setting" (ребут
> апача не помогает) ну а nginx ждет апача.
> Эту теорию подтверждает то что система мониторинга (netxms) тоже не
> может получить доступ к базе во время данного "эвента")
> Лечит ситуацию час ожидания или ребут дб сервера, ибо mysql не хочет
> по хорошему убиватся.
>
>
> Под базу выделена машина 2xquad xeon 2.66 16Gb ram . мощность
> нехилая. конфиги mysql если надо - напишу.
> Среднее количество запросов при ~50 юзеров онлайн . 1.23К в секунду.
1200 req/sec ?
что же будет при 2к игроков? :-)
> Сегодня делал стресс тест апачу скриптом содержащим в себе немного
> запросов к базе, мемкешу и просто вычислений. все летает . Тест
> показывает что 2-3к юзеров держится без лагов.
>
>
> Игровой проект скоро будет запущен , и после оф запуска , пуска
> рекламы и огромного количества юзеров. такие штуки крайне нежелательы.
>
>
> Вообщем подскажите в какую сторону смотреть.
> P.S. из mysql-slow лога выловлены запросы, но они безобидные.
> присутствует кстати много join-ов от которых програмисты обещали мне
> поскорее избавится.
>
>
>
> С уважение,Алексей
Добавьте в лог время обработки запросов и смотрите, что долго выполняется.
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html#variables
$upstream_response_time — в переменной хранятся времена ответов
серверов в секундах с точностью до миллисекунд. Несколько ответов также
разделяются запятыми и двоеточиями.
$upstream_status — в переменной хранятся коды ответов серверов.
Несколько ответов также разделяются запятыми и двоеточиями.
P. S. может ддос? :-)
More information about the nginx-ru
mailing list