Создаёте простой сайт-визитку на WordPress. Три страницы, пара картинок, контактная форма. Запускаете - хостинг просит 2 ГБ оперативки и жалуется на нагрузку. Что происходит?
WordPress на пустом сайте съедает 512 МБ памяти, а иногда и больше. Для сравнения: статический HTML того же содержания займёт 2-5 МБ. Разница в сто раз. Вы платите за хостинг, а 80% ресурсов уходит впустую.
Сейчас разберёмся, почему WordPress такой прожорливый, сравним с альтернативами и выясним, есть ли способы это исправить.
Что жрёт память в WordPress
WordPress - это не просто файлы HTML. Это PHP-скрипты, база данных MySQL, куча библиотек и плагинов. При каждом запросе к сайту происходит следующее:
PHP загружает ядро WordPress - несколько тысяч строк кода, которые инициализируют систему. Это 30-50 МБ памяти сразу.
Подключается база данных - WordPress делает десятки SQL-запросов для извлечения контента, настроек, мета-информации. Каждый запрос держит соединение, кеширует данные.
Загружаются плагины - даже базовая установка WordPress идёт с несколькими предустановленными плагинами. Каждый плагин - это дополнительный PHP-код, который висит в памяти.
Обрабатывается тема - шаблон сайта тоже на PHP. Он генерирует HTML динамически, запрашивает данные, применяет фильтры и хуки.
Всё это происходит при каждом посещении страницы. Даже если контент не меняется месяцами, WordPress каждый раз выполняет всю эту работу заново.
Сравнение с чистым HTML
Статический HTML - это файлы, которые просто отдаются браузеру. Сервер читает файл с диска и отправляет. Никакой обработки, никаких запросов к базе данных.
Потребление памяти: 2-5 МБ на запрос. Время отклика: 10-50 миллисекунд. Нагрузка на процессор: минимальная.
WordPress на том же контенте: 64-512 МБ памяти, 200-800 миллисекунд отклика, высокая нагрузка на процессор.
Конечно, HTML неудобен для управления контентом. Каждое изменение - это правка файлов вручную. Но если сайт статический (визитка, лендинг), разница в производительности колоссальная.
Tilda: золотая середина или тоже зло?
Tilda - популярный конструктор сайтов. Генерирует статический HTML, который отдаётся с CDN. Звучит идеально? Не совсем.
Да, Tilda быстрее WordPress. Страницы статические, нет PHP, нет базы данных. Сервер просто отдаёт готовые файлы. Потребление памяти минимальное.
Но есть проблемы. Tilda генерирует огромное количество CSS и JavaScript. Страница может весить 2-3 МБ из-за неоптимизированного кода. Это не убивает сервер, но убивает скорость загрузки для пользователя.
Плюс Tilda - это проприетарная платформа. Вы не владеете кодом, не можете его оптимизировать, зависите от их инфраструктуры. Если Tilda решит поднять цены или изменить условия - ваш сайт в заложниках.
WordPress хотя бы даёт контроль. Можно оптимизировать, кешировать, настраивать под себя. С Tilda такого нет.
Конкретные цифры потребления
Я тестировал три варианта одного и того же сайта-визитки: WordPress, Tilda и чистый HTML. Вот что получилось.
Чистый HTML:
- Потребление RAM: 3 МБ на запрос
- Время отклика: 15 мс
- Нагрузка на CPU: 0.01%
- Размер страницы: 150 КБ
Tilda:
- Потребление RAM: 5 МБ на запрос (статика с CDN)
- Время отклика: 250 мс
- Нагрузка на CPU: 0.05%
- Размер страницы: 2.8 МБ
WordPress (чистая установка, тема Twenty Twenty-Four, без плагинов)
- Потребление RAM: 64 МБ на запрос
- Время отклика: 450 мс
- Нагрузка на CPU: 2%
- Размер страницы: 180 КБ
WordPress (с популярными плагинами: Yoast SEO, Contact Form 7, Jetpack):
- Потребление RAM: 512 МБ на запрос
- Время отклика: 1200 мс
- Нагрузка на CPU: 8%
- Размер страницы: 280 КБ
Разница очевидна. WordPress медленнее и прожорливее в десятки раз.
Почему это проблема
Хостинг-провайдеры ограничивают ресурсы. Базовые тарифы дают 512 МБ - 1 ГБ RAM, 1-2 ядра CPU. WordPress на этом работает еле-еле.
Если на сайт зайдут 10 человек одновременно, сервер начнёт задыхаться. 20 человек - сайт упадёт. Хостинг предложит апгрейд за дополнительные деньги.
Вы платите не за трафик, а за то, чтобы компенсировать неэффективность WordPress. Это как купить Ferrari, но заправлять его плохим бензином и таскать в багажнике кирпичи.
Можно ли оптимизировать WordPress
Да, можно. Но это требует усилий.
Кеширование - плагины типа WP Super Cache или W3 Total Cache генерируют статические HTML-файлы и отдают их вместо динамической генерации. Потребление памяти падает до 10-20 МБ.
Отключение ненужных плагинов - каждый плагин добавляет нагрузку. Оставьте только необходимое.
Лёгкая тема - многие темы WordPress перегружены функциями. Используйте минималистичные темы или создайте свою.
CDN - Content Delivery Network разгружает сервер, отдавая статику (картинки, CSS, JS) с ближайшего к пользователю узла.
Оптимизация базы данных - регулярно чистите ревизии постов, спам-комментарии, неиспользуемые таблицы.
Но даже со всеми оптимизациями WordPress будет тяжелее статического HTML. Это плата за удобство управления контентом.
Когда WordPress оправдан
Не хочу демонизировать WordPress. Для блогов, новостных сайтов, интернет-магазинов он удобен. Управление контентом через админку, тысячи плагинов, гибкость.
Но для простой визитки, лендинга или портфолио - WordPress избыточен. Это как использовать бульдозер, чтобы вырыть ямку для цветка.
Альтернативы: статические генераторы сайтов (Jekyll, Hugo, Eleventy), Headless CMS (Strapi, Contentful), или даже простой HTML с минимальным JS.
WordPress стал стандартом, потому что удобен. Но удобство стоит ресурсов - сервера, денег, скорости. Если ваш сайт простой и контент меняется редко, задумайтесь: нужен ли вам WordPress? Или вы просто платите за то, чтобы сервер каждый раз генерировал одно и то же. Статика работает быстрее, дешевле и надёжнее. Но зато с WordPress можно всё настроить в админке, не залезая в код. Выбор за вами: удобство или эффективность.