Вы здесь

Друпал и Джумла: Быстродействие

Какая система управления содержанием быстрее? Друпал или Джумла?

Экспериментальная установка

Я использовал конфигурацию Apache, mod_php, PHP4, APC из предыдущего эксперимента с быстродействием, чтобы сравнить быстродействие Друпала и Джумлы на 3-летнем Pentium IV 3Ghz, 2 GB RAM, Gentoo Linux. Было использовано следующее программное обеспечение: Apache 2.0.55, PHP 4.4.2, MySQL 4.1.4, Drupal 4.7.3 и Joomla 1.0.10.

Я просто скачал и установил последние стабильные версии Друпала и Джумлы, после чего старался настроить их подобным образом. Чтобы сделать это, я включил блоки «Вход в аккаунт» и «Кто на сайте». Также добавил две ссылки и виджет поиска над меню, включил подсчёт количества просмотров страниц и однообразно настроил нижние колонки. Затем, я добавил одного автора, одну категорию и один документ, как показано на изображениях ниже.

 быстродействие

Друпал.

 быстродействие

Джумла.

Для вычисления количества обрабатываемых в секунду запросов была использована программа Apache ab2. Страница запрашивалась 1 000 раз в 5 параллельных потоков: ab2 -n 1000 -c 5. Чтобы проверить влияние gzip-сжатия страниц, я установил, что ab2 может принимать сжатые страницы: ab2 -n 1000 -c 5 -H "Accept-Encoding: gzip;". Отметьте: ab2 не запрашивает какие-либо изображения или .css-файлы; получались только динамически сгенерированные HTML-документы.

Запросы в секунду

При выключенном кешировании, Джумла может обслужить 19 запросов страниц в секунду, в то время как Друпал отдаёт только 13 страниц. Таким образом, Джумла на 44% быстрее Друпала.

Однако, когда кеширование включено, Джумла может обслужить 21 запрос страниц в секунду, а Друпал может обслужить 67 страниц. Здесь Друпал на 319% быстрее Джумлы.

Другими словами, система кеширования Джумлы улучшает быстродействие на 12%, а система кеширования Друпала улучшает быстродействие на 508%.

Важно отметить, что Друпал может отдавать кешированные страницы только анонимным посетителям (пользователям, которые не вошли в аккаунт). После того, как пользователь вошёл в аккаунт, кеширование для него перестаёт работать, так как страница может быть персонализирована различными путями. Таким образом, на практике, Друпал может быть не на 319% быстрее Джумлы; это зависит от соотношения анонимных посетителей и зарегистрированных пользователей, как часто очищается кеш страниц и параметров кеширования.

Наконец, при обслуживании сжатых страниц, Друпал становится немного быстрее, чем при обслуживании несжатых страниц. С другой стороны, Джумла становится немного медленнее. Причина в том, что в Друпале кеш страниц хранится напрямую в сжатом состоянии; разжимать его нужно только тогда, когда клиент не поддерживает gzip-сжатие, но можно отдавать страницы напрямую из кеша, когда клиент поддерживает gzip-сжатие.

 быстродействие

Длина документа

Первый рисунок показывает, что затраты на сжатие и расжатие страниц пренебрежимо малы. Второй рисунок показывает, что, однако, существенное влияние оказывает длина документа и, следовательно, использование ширины канала.

Друпал всегда пытается отдать сжатую страницу. С другой стороны, Джумла не сжимает страницы до тех пор, пока этот параметр явно не включен.

 быстродействие