хуйу нас не матерятся
Часто приходится читать мнения о скорости работы каких- либо CMS. Обычно это звучит как "SMF - очень быстрый форумный движок" или "punbb - очень лёгкий движок". А вот в чём конкретно отличие? На сколько SMF быстрее? И на сколько punbb легче? Давайте замерим!
Участники тестирования:
Раунд первый - замеряем скорость загрузки стандартных шаблонов.
Чистый fluxbb генерирует страницу за 0.1 секунды, ещё 0.2с тратится на загрузку 2 изображений и 0.07с на загрузку CSS. Итого: 0.37с, 4 запроса и 33.33кб на всё.
Html: 0.1с
css, js, img: 0.27c Общий размер: 33.33кб Общее время: 0.37с Запросов: 4
Картина похожая, что не удивительно - движки родственные:
Html: 0.1с
css, js, img: 0.2c Общий размер: 85.75кб Общее время: 0.3с Запросов: 4
Картина совсем другая. Десятикратное увеличение времени загрузки. При чём, скорость генерации страницы больше не значительно. Основной вклад- js библиотеки.
Html: 0.12с
css, js, img: 2.99с Общий размер: 312.27кб Общее время: 3.11с Запросов: 32
Html: 0.1с
css, js, img: 1,12с
Общий размер: 225.59кб
Общее время: 1.22
Запросов: 12
Шаблон всего в 1.5 раза меньше чем у Phpbb, но упаковка всего js в один файл позволила в 2.5 раза быстрей загрузиться.
Html: 0.11
css, js, img: 1.28с
Общий размер: 362.54кб
Общее время: 1.39с
Запросов: 17
первое место делят сразу 3 участника: fluxbb, punbb, и phorum со скоростью генерации страницы в 0.1с и очень лёгкими шаблонами. SMF и Phpbb находятся на втором и третьем местах.
Пишем скрипт-генератор сообщений, и закидываем в каждый форум по 100 тем. В каждую тему - 100 текстовых сообщений. Итого 10000 сообщений - размер небольшого форума. Для единообразия данных на всех подопытных форумах, каждая тема именуется как "news topic 0,1,2...", а сообщения- все одинаковые. Это позволит точно сравнить размер выделяемой памяти, в независимости от передаваемых данных.
Далее расставляем микротайм счётчики и смотрим на реальную скорость генерации страниц. Замеряем не на главной странице, а на странице сообщений внутри темы. Так движку придётся немного активнее использовать БД. И одновременно собираем информацию о выделенной памяти.
Результаты:
Движок | Время генерации страницы | Использование памяти |
---|---|---|
PHORUM | 0.01с +- 0.002с | 1572864 байт |
Punbb | 0.017с +- 0.003c | 1310720 байт |
Fluxbb | 0.018с +- 0.005c | 1835008 байт |
SMF | 0.026c +- 0.003c | 1835008 байт |
Phpbb | 0.5с (0.08с с кэшем) | 3670016 байт |
Явным аутсайдером нашего тестирования является Phpbb. Даже при использование кэша, страница генерируется в 8 раз дольше чем у лидера- PHORUM. В случае, если ещё не был готов кэш, страница генерируется в 50 (пятьдесят) раз дольше. Памяти используется в 3 раза больше, чем у лидера- Punbb. Шаблон огромный и раздроблен на множество мелких фрагментов: 4 js и 11 css файлов.
С большим отрывом от Punbb, следующее место присуждается SMF. Экономно использует память, но медленно(в 2.5 раза) генерирует страницы. Шаблон так же слабо оптимизирован.
Fluxbb. Оказался медленней брата-близнеца Punbb. Но разница не существенна.
Punbb. Экономнее всего использует память, очень быстро генерирует страницы. Очень лёгкий шаблон.
Первое место присуждается PHORUM. Быстрее всех генерирует страницы. Отрыв от второго места почти в 2 раза. Очень экономно расходует память. И хотя шаблон значительно больше чем у Fluxbb и Phpbb, имеет огромное преимущество в архитектуре.