Зайти в момент подвисания в mysql и посмотреть show full processlist?<br>Скорее всего, блокировки таблиц при вставке/обновлении. <br><br><div class="gmail_quote">2009/5/13 Алексей <span dir="ltr">&lt;<a href="mailto:me@algalish.ru">me@algalish.ru</a>&gt;</span><br>

<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Добрый день, коллеги<br>
<br>
есть 3 машины. nginx apache mysql и браузерная игра в стадии беты.<br>
<br>
Иногда все просто умирает.Все происходит при онлайне 100 человек.Загрузка проца минимальная на всех машинах;<br>
Мое расследование показало что изначально висит база. чтото ее вешает. Апач не дожидается ответа и начинает плодить процессы и в результате у него воникает популярное &quot;server reached MaxClients setting&quot; (ребут апача не помогает) ну а nginx ждет апача.<br>


Эту теорию подтверждает то что система мониторинга (netxms)  тоже не может получить доступ к базе во время данного &quot;эвента&quot;)<br>
Лечит ситуацию час ожидания или ребут дб сервера, ибо mysql не хочет по хорошему убиватся.<br>
<br>
<br>
Под базу выделена машина 2xquad xeon 2.66 16Gb ram .   мощность нехилая. конфиги mysql если надо - напишу.<br>
Среднее количество запросов при ~50 юзеров онлайн .  1.23К в секунду.<br>
Сегодня делал стресс тест апачу скриптом содержащим в себе немного запросов к базе, мемкешу и просто вычислений.   все летает . Тест показывает что 2-3к юзеров держится без лагов.<br>
<br>
<br>
Игровой проект скоро будет запущен , и после оф запуска , пуска рекламы и огромного количества юзеров. такие штуки крайне нежелательы.<br>
<br>
<br>
Вообщем подскажите в какую сторону смотреть.<br>
P.S. из mysql-slow лога выловлены запросы, но они безобидные.  присутствует кстати много join-ов   от которых програмисты обещали мне поскорее избавится.<br>
<br>
<br>
<br>
С уважение,Алексей<br>
</blockquote></div><br><br clear="all"><br>-- <br>С уважением, Борис Долгов.<br>icq 77556665<br>e-mail <a href="mailto:boris@dolgov.name">boris@dolgov.name</a><br>