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