Wordpress - трата ресурсов CPU - 2026

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2026
Перейти к:навигация, поиск

WordPress — самая популярная CMS в мире, работающая под управлением PHP. Однако, как показывает независимое профилирование, от версии к версии WordPress потребляет всё больше ресурсов процессора даже при рендеринге пустой страницы «из коробки» (без единого плагина). В 2026 году эта тенденция не только не остановилась, но и ускорилась.

Методология

Измерения проводятся с помощью PHP-профилировщиков (XHProf, SPX) на чистой установке каждой мажорной версии WordPress. Тестируется только главная страница — без плагинов, с темой по умолчанию (Twenty* соответствующей эпохи). Метрика: количество тактов процессора (CPU cycles), затраченных на генерацию страницы.

Динамика потребления CPU

Версия Год Тактов CPU (усл. ед.) Рост относительно WP 1.0
WP 1.0 2004 4 287
WP 3.0 2010 33 000 ~7,7×
WP 5.0 2018 87 000 ~20×
WP 6.0 2022 366 000 ~85×
WP 7.0 2026 367 000 ~86×

Ключевой вывод: с версии WP 1.0 до WP 7.0 потребление CPU выросло в 86 раз без какого-либо дополнительного функционала со стороны пользователя — просто за счёт разрастания ядра CMS.

Другие метрики деградации

Метрика WP 1.0 WP 7.0 Рост
Время рендеринга страницы 11× в 11 раз
Количество подключаемых файлов 35× в 35 раз
Потребление памяти ~0,5 MB ~18 MB в 36 раз
Размер исходного кода ~1 MB ~40 MB в 40 раз
Такты препроцессора 110× в 110 раз

Анатомия регрессии: WP 6.9 → WP 7.0

Переход с WP 6.9 на WP 7.0 (2026) даёт прирост всего ~0,3% по CPU (366K → 367K), но детальное профилирование в SPX показывает ухудшение внутренней архитектуры:

Метрика WP 6.9 WP 7.0 Δ
Wall time (мкс) 104 310 133 820 +28,3 %
Количество вызовов функций 416 045 439 406 +5,6 %
Уникальных функций 2 438 2 545 +4,4 %
Пиковое потребление памяти 6,55 MB 6,80 MB +3,9 %

Основной источник регрессии — блочный рендеринг. Количество блоков на странице не изменилось (934), но каждый блок стал обрабатываться дольше:

Функция WP 6.9 WP 7.0 Δ
WP_Block::render (934 вызова) 428 ms 719 ms +291 ms (+68 %)
render_block (635 вызовов) 154 ms 253 ms +100 ms
do_blocks (18 вызовов) 153 ms 249 ms +96 ms
render_block_core_post_template 66 ms 113 ms +47 ms
render_block_core_pattern 56 ms 89 ms +33 ms

Причина — новые хуки, добавленные в 7.0: каждый блок теперь проходит через конвейер custom CSS / anchor / supports, который навешивает тег-процессор на каждый блок (~900 итераций):

  • wp_render_custom_css_class_name — 934 вызова
  • wp_render_custom_css_support_styles — 891 вызов
  • block_core_gallery_render_context — 891 вызов (в т.ч. на не-gallery блоках)
  • block_core_paragraph_add_class — 217 вызовов
  • wp_apply_anchor_support — 169 вызовов

Рост кодовой базы

С 2008 по 2026 год WordPress вырос количественно:

Версия Размер папки Количество файлов Папок
WP 2.7 (2008) 5,38 MB 603 76
WP 3.0 (2010) 7,92 MB 756 79
WP 4.0 (2014) 16,8 MB 1 156 119
WP 5.0 (2018) 38,0 MB 1 713 ~130
WP 6.0 (2022) ~45 MB ~2 000 ~150
WP 7.0 (2026) ~50+ MB ~2 200+ ~160+

Общий размер увеличился примерно в 10 раз, количество файлов — в 3,5 раза.

Почему это важно

Хостинг-провайдеры рекламируют тарифы «15 сайтов за 250 рублей», подразумевая статические HTML или лёгкие PHP-скрипты. Реальное размещение одного современного WordPress-сайта на таком тарифе приведёт к исчерпанию CPU-квоты ещё до того, как зайдёт первый посетитель.

Даже «чистый» WP 7.0 без плагинов тратит в 86 раз больше CPU, чем WP 1.0. С плагинами (WooCommerce, SEO, кеширование, page builder) потребление легко умножается ещё в 2–5 раз.

Резюме

  • WordPress 7.0 потребляет в ~86 раз больше CPU, чем WordPress 1.0, на той же задаче (рендеринг главной страницы).
  • Основной источник роста — блочный редактор (Gutenberg) и его обвязка, которая навешивает дополнительные обработчики на каждый блок.
  • Даже межмажорный переход 6.9 → 7.0 даёт прирост wall time на +28 %.
  • Рост потребления CPU не является следствием нового функционала для пользователя — это результат разрастания ядра и отсутствия оптимизации «по умолчанию».
  • При выборе хостинга необходимо закладывать минимум в 100 раз больше ресурсов, чем требуется для простого PHP-сайта.

Ссылки

×
Реклама
ИКС