Все наглухо виснит

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