Трак с mod_python медленно?
У меня есть несколько установок Trac, запущенных на моем веб-сервере Ubuntu/Apache, и я заметил, что когда я наблюдаю за использованием ЦП во время доступа к страницам Trac, это не редкость, когда ЦП достигает 100%. Меня беспокоит, что это происходит только с одним пользователем, обращающимся к системе.
Есть ли способ сделать доступ к Trac на моем веб-сервере менее ресурсоемким?
5 ответов
Я нашел мод wsgi быстрее, чем мод python.
Я опубликовал статью о том, как настроить Trac с mod_wsgi здесь
Для информации: обсуждение этого вопроса на http://trac.edgewall.org/ticket/7490. Они ссылаются на проблемы с производительностью KeepAlive в Apache2.x с mod_python.
Цитата из продолжения 17: с поддержкой активности мы получили постоянную загрузку ЦП 80% на нашем сервере, с отключенной поддержкой активности мы получили постоянную загрузку ЦП 15% на нашем сервере Загрузка ЦП происходит за счет процессов Apache
Это также зависит от вашей базы данных. Какой сервер базы данных вы используете? Он находится на том же хосте, что и ваш сервер Trac? Вы уверены, что загрузка процессора исходит от Apache?
Лично я обнаружил, что trac лучше работает на mod_fastcgi, а еще лучше на mod_wsgi. Мы используем виртуальную машину на скромном виртуальном хосте для размещения нашего экземпляра Trac, и она постоянно используется (например, обновляется каждые несколько секунд) примерно 20 сотрудниками без каких-либо проблем.
Если у вас есть mod_deflate
включен, попробуйте отключить его.
Был также похожий вопрос о Trac ML, возможно, он вам поможет (в частности, последнее письмо с возможной конфигурацией Apache): ML Mail (Группы Google) " Trac 0.11, такой медленный!!!!!"
Редактировать Возможно, но, поскольку у меня не было таких проблем, это также может быть для вас интересным: производительность и сборка мусора. Тем не менее, я не думаю, что это имеет место здесь...
Edit # 2 Только что вспомнил, что со следующей стабильной версией проблема с производительностью исчезнет (если это из-за mod_defleat). Смотрите также Dev-ML: Подготовка следующего стабильного релиза (первая точка после "Однако...")