Краткий ответ: WooCommerce требует больше, чем сайт-визитка: 4 GB+ RAM и NVMe-диск, объектный кеш Redis, страничный кеш с исключёнными cart/checkout/account, настоящий системный cron вместо WP-cron и HTTPS везде. Сделайте эти пять вещей правильно — и скромный VPS потянет серьёзный магазин.
Обзор
Магазин — это залогиненное, write-heavy приложение: корзины меняют сессии, checkout пишет заказы, обновления остатков инвалидируют кеши. Именно поэтому общие советы «сделать WordPress быстрым» (кешировать всё) ломают WooCommerce при слепом применении — динамические страницы должны оставаться динамическими, а остальное — кешированным.
Что нужно иметь
- План, рассчитанный на коммерцию: см. выбор VPS — рекомендуется NVMe VPS или Power VPS.
- Оттюненный стек: применены гайды по PHP-FPM и MariaDB.
- Рабочий SSL (гайд) — для checkout без вариантов.
Пошаговая инструкция
- Кеш с исключениями: включите страничный кеш, но исключите
/cart,/checkout,/my-accountи всё с cookiewoocommerce_cart_hash/сессий — LiteSpeed Cache и крупные плагины имеют пресеты WooCommerce; проверьте, добавив товар в корзину из двух браузеров. - Объектный кеш: Redis — поиск товаров, сессии и options долбят базу на каждом динамическом запросе.
- Настоящий cron: WP-cron срабатывает на просмотрах страниц — ужасно для магазинов (пропущенные запланированные распродажи, застрявшие вебхуки ночью). Отключите и запланируйте:
# wp-config.php define('DISABLE_WP_CRON', true); # system crontab (every minute) * * * * * sudo -u www-data wp cron event run --due-now --path=/var/www/shop.example.com >/dev/null 2>&1 - Сессии и масштабирование: WooCommerce по умолчанию держит сессии в базе — на одном VPS это ок; просто держите MariaDB здоровой и следите за размером таблицы
wp_woocommerce_sessions. - Транзакционная почта: письма о заказах должны доходить — используйте SMTP почтового сервиса, а не PHP mail() с VPS.
- Нагрузочный тест перед кампаниями: симулируйте всплески checkout на staging; следите за насыщением FPM и медленными запросами, при необходимости увеличивайте план.
Типичные проблемы
- Клиенты видят чужие корзины: страницы корзины попали в кеш — немедленно исправьте исключения.
- Checkout медленный при быстром каталоге: он некеширован по замыслу — именно здесь проявляются Redis + тюнинг PHP/базы.
- Остатки/письма отстают ночью: WP-cron без посетителей — чинит схема с системным cron выше.
Когда обращаться в поддержку
Планируете запуск или миграцию существующего магазина? Откройте тикет — команда посоветует размер, а бесплатная миграция покрывает сайты WooCommerce вместе с данными заказов (см. также миграцию нескольких сайтов).
Частые вопросы
Насколько большой VPS нужен магазину WooCommerce?
Стартуйте с 4 vCPU / 8 GB RAM на NVMe для магазина со стабильным трафиком; корзина и checkout обходят страничный кеш, поэтому CPU, RAM и задержка диска значат больше, чем для контентного сайта.
Почему cart и checkout надо исключать из кеширования?
Они персональные и меняются для каждого посетителя — закешированная копия покажет покупателю чужую корзину или сломает оформление. Кеш-плагины с пресетами WooCommerce исключают их автоматически.
Зачем менять WP-cron на системный cron в магазине?
WP-cron запускается только когда кто-то заходит; в тихие часы распродажи, синхронизации остатков и follow-up письма молча ждут. Настоящий cron выполняет их ежеминутно независимо от трафика.
Похожие статьи
- Как выбрать VPS для WordPress
- Как настроить объектный кеш Redis
- Как ускорить WordPress на VPS
- Чек-лист производительности WordPress
Готовы начать? Заказать WordPress VPS в Cloud2Y →
