On Sun, 23 Jun 2002, Alexey Zvyagin wrote:
> Игорь, спасибо за ответы! Проблемы я пока сейчас вижу у себя в том, что
> иногда SQL скрипты по времени выполнения выполнения накладываются один на
> другой и юзают одни и те же таблицы, и тут уже работают внутренние локировки
> SQL, когда делаются UPDATE или DELETE запросы... Я сейчас код скриптов своих
> подправил и лучше стало, но все равно проблема иногда возникает минут на 10.
В общем, ограничение числа соединений и ждущих процессов работает
лишь в том случае, если стоит достаточный AccelTimeout. Без него
процессы фронтенда освобождаются раньше, чем процессы бэкенда, и
эти занятые бэкенды на фронтенде нигде не учитываются.
> > Значит, так. Прежде всего рекомендую поставить \"%{accel}x\" в логе.
> > Очень способствует.
>
> А это реально, если к серваку (фронтенду) 280 (от 200 до 300 в среднем)
> запросов в секунду? Там пока проблема снова выплевет, винт будет забит
> напрочь логами :(
Так вы вообще не ведёте access_log ?
100 запросов в секунду днём - это примерно 1G лога в сутки.
Плюс-минус 200M в зависимости от того, что логируется.
В зависимости от имеющегося места можно крутить логи раз в сутки, а
можно и чаще.
> > Тогда можно точно сказать, ждал ли mod_accel в бизилоке или нет,
> > сколько времени отдавался запрос, был ли получен ответ или mod_accel
> > вышел по таймауту.
>
> Я все понимаю, но при такой скорости запрососв в секунду к фронтенду и что
> поблмеа всплывает раз-два в сутки, очень сложно мне кажется потом эти логи
> будет даже просто обработать чтобы вырезать кусок.
Если известно примерное время проблемы, то из логов оно достаётся
банальным grep'ом.
Игорь Сысоев
http://sysoev.ru
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =