Уважаемые спецы, подскажите, как оптимально настроить Apache2 и FastCGI для сервера с большой нагрузкой.
Сейчас ~200 чел. единовременно, еле пашет, а потенциально будет на порядок больше. Скрипт (perl) 1/3 - 9/10 времени работы тратит на выполнение new CGI::Fast. Еще используется (активно) MySQL, там тоже есть над чем работать в плане оптимизации.
Все это под Debian GNU/Linux.
По идее, наверно, есть смысл переходить на С и более другую СУБД (база растет как на дрожжах), но это не сразу, пока надо продержаться.
Извиняюсь, до жирафа дошло, что тестировочные таймеры были выставлены некорректно, так что new CGI::Fast возможно и не виноват.
Но вопрос, увы, остается - система тормозит страшно, все 2 гига оперативки забиты, CPU, между тем, не более 50% используется.
>new CGI::Fast возможно и не виноват.Он не тратит, а простаивает ожидая нового запроса.
>Но вопрос, увы, остается - система тормозит страшно, все 2 гига оперативки
>забиты, CPU, между тем, не более 50% используется.Сам ответ и озвучил, прибавь оперативки или оптимизируй скрипты чтобы потребляли меньше памяти. Вынеси из апача все лишнее, увеличь размер системных буферов, если нет веских причин выкинь apache2 и используй 1.3, попробуй кешировать запросы через mod_accel. Оптимизируй настройки MySQL и запросов к нему.
Скрипт вы писали ? Думаю настал как раз тот момент, чтобы переписать его с учетом большой нагрузки, используя кеширвоание и т.д.
Спасибо!
Скрипты с системой мне в наследство достались, пока борюсь оптимизацией запросов, но силы на исходе.
Не подскажите, apache 1.3 поддерживает 4-х процессорные системы?
Возможно ли, в принципе, такой связкой (perl+MySQL) поддерживать такую нагрузку (1000 - 5000 человек одновременно, по 3-5 разных запросов к базе на странице, база растет в геометрической прогрессии)? Мне почему-то кажется, что нет.