Как подготовить сайт на VPS к Чёрной пятнице? Проверим по чек-листу
Чёрная пятница, которая в этом году выпадает на 28 ноября, — самый жаркий и прибыльный период для онлайн-ритейла. В статье рассказываем, как подготовить сервер и инфраструктуру так, чтобы ваш проект пережил наплыв покупателей без падений, тормозов и потерь.
Каждый год тысячи людей пытаются сделать покупки, но сталкиваются с медленно работающими сайтами. Если сервер падает в самый разгар распродажи, это не просто неудобно — это потеря денег, удар по репутации и уход клиентов к конкурентам. Никакая реклама не поможет, если сайт не справляется с наплывом посетителей.
Именно поэтому техническая подготовка к Чёрной пятнице должна начинаться задолго до старта распродаж. И сайт, и сам сервер должны работать как швейцарские часы. Поэтому наша цель проста: обеспечить максимальную скорость, стабильность и конверсию, чтобы сайт не просто выжил под нагрузкой, а ещё и помог достичь рекордных коммерческих показателей.
Если коротко, то чек-лист по подготовке сайта выглядит так:
- Проверьте ресурсы VPS.
- Оптимизируйте сайт.
- Настройте мониторинг с уведомлением.
- Сделайте резервную копию.
- Заранее протестируйте нагрузку.
Теперь обо всём подробнее.
Проверьте ресурсы VPS
Первое, с чего стоит начать — это убедиться, что у вашего виртуального сервера хватает оперативной памяти (RAM) и числа процессорных ядер (CPU). Оперативная память влияет на количество одновременно обрабатываемых запросов и на кеш. Если на виртуальной машине крутится небольшой сайт, то для его спокойной работы нужно минимум 2 ГБ, для сайта со средним трафиком, то есть до 5000 посетителей в день, — это уже 4-8 ГБ. CPU важно для динамических сайтов, таких как WordPress, Bitrix или Odoo, то есть там, где сервер активно генерирует страницы. Если сайт работает на PHP, оптимально иметь 2-4 процессорных ядра.
Если вы ожидаете серьёзный наплыв трафика, необходимо временно, а может быть и с прицелом на более долгосрочную перспективу, изменить параметры конфигурации сервера в большую сторону.
Ревизии подлежит и дисковое пространство, хотя прямого отношения к быстродействию сервера запас по объёму свободного места на диске и не имеет. Неплохо бы убедиться, что место не закончится прямо в самый неподходящий момент. А ещё следует учитывать, что накопители на SSD и NVMe более быстрые по сравнению с HDD. Если есть запас по времени, то перенесите сайт с медленных жёстких дисков. Это точно даст прибавку в надёжности всей системы в целом.
Оптимизируйте сайт
Необходимо максимально снизить нагрузку, которую генерирует сам сайт. Например, кэширование позволяет сохранять результаты выполнения ресурсоёмких операций, таких как генерация страниц или обработка результатов запросов, и отдавать их пользователю, минуя повторную обработку.
Старайтесь уменьшать веса и сложность страниц, поскольку это поможет снизить время загрузки и нагрузку на сам сервер. Используйте сжатие для изображений, удалите лишние пробелы, комментарии и символы из файлов сайта, регулярно удаляйте лишние данные: спам-комментарии, старые ревизии постов, ненужные логи.
Настройте мониторинг с уведомлением
При большом наплыве посетителей нагрузка на ресурсы сервера ожидаемо возрастает, и значит, эту нагрузку надо как-то отслеживать. Для таких целей существуют разнообразные системы мониторинга, которые позволяют следить за состоянием виртуальной машины в режиме реального времени.
Для стабильной работы VPS под нагрузкой необходимо контролировать его ключевые показатели, например, загрузку процессора. Постоянная стопроцентная загрузка означает, что процессор не справляется с объёмом поступающих запросов.
Также важно следить за доступным объёмом оперативной памяти. Когда RAM заканчивается, работа сервисов серьёзно замедляется.
Мониторинг нужен и в отношении сетевого подключения. Контроль входящего и исходящего трафика поможет выявить подозрительную активность, например, DDoS-атаку.
А низкая скорость чтения и записи данных на диск или превышение лимита операций ввода/вывода в секунду (IOPS) могут просто задушить работу базы данных, да и сервера в целом.
Мониторинг основных показателей по нагрузке на систему уже вшит в каждый виртуальный сервер RUVDS средствами самого хостинга. Эти данные можно увидеть во вкладке «Статистика» на странице виртуальной машины.
Помимо контроля за нагрузкой при помощи штатных средств хостинга, можно установить любой другой сервис или даже целую систему, которая будет мониторить состояние и сервера, и сайта. Есть достаточно лёгкие сервисы, например, Monit или Uptime Kuma, которые могут работать на той же виртуальной машине, где крутится ваш сайт. Есть системы посложнее — Prometheus или Zabbix, требующие отдельной виртуалки. Более того, готовый образ для создания сервера с системой мониторинга Zabbix уже есть в нашем маркетплейсе.
Особую ценность приобретает система мониторинга, если она умеет уведомлять о возникающих проблемах рассылкой оповещений через мессенджер. В таком случае вам не придётся отвлекаться на контроль за состоянием вашего сервиса. Система сама отвлечёт вас, когда какой-нибудь показатель достигнет критического порога. Например, Monit может отправлять сообщения в Telegram.
Сделайте резервную копию
Перед важными изменениями сделайте резервную копию наиболее важных данных или даже всего сервера. А лучше настройте регулярное резервное копирование. На странице своей виртуалки данную услугу можно подключить через вкладку «Бэкап».
Там можно указать, по каким дням делать резервную копию и сколько сохранять последних по времени резервных копий. Если возникнет необходимость, чтобы вернуться к сохранённому состоянию, следует обратиться к специалистам технической поддержки. Они восстановят сервер из одного из бэкапов в кратчайшие сроки.
Кроме того, настроить сохранение данных можно и с помощью дополнительных инструментов, например, через ispmanager, который доступен для некоторых Linux-систем.
Да и вообще, можно сохранять определённые файлы и папки на другой сервер или компьютер, чтобы просто не потерять их. Для этого также существуют специальные инструменты.
Важно, чтобы бэкапы хранились вне VPS, то есть на другом сервере или в облачном хранилище. Это позволит восстановить их в случае полного отказа сервера или его недоступности.
Заранее протестируйте нагрузку
Зачем заранее проверять, как сайт и сервер справятся с предполагаемой нагрузкой? Чтобы выявить узкие места, определить максимальное количество одновременных пользователей, которое ваш сервер в текущем состоянии может стабильно выдерживать, а также спрогнозировать возможные расходы и понять, какие ресурсы нужно будет докупить или временно увеличить.
Нагрузочное тестирование можно провести прямо онлайн, выбрав удобный инструмент, даже без специальных навыков. Например, сервис Loader.io.
Примерный план работ по тестированию такой:
- Определите, сколько одновременных активных пользователей вы ожидаете в пиковый момент.
- Воссоздайте типичный маршрут пользователя на сайте, что-то типа, Главная → Каталог → Страница товара → Корзина.
- Запустите выбранный инструмент, постепенно увеличивая количество виртуальных пользователей до прогнозируемого максимума.
- Параллельно отслеживайте параметры вашего сервера: CPU, RAM, IOPS. Для этого используйте сервис мониторинга.
Во время теста следите за временем ответа — его резкий рост будет означать, что вы достигли предела. Полученные данные помогут вам принять обоснованное решение по тому, что необходимо улучшить или оптимизировать в преддверии периода критической нагрузки.
Заключение
Главный принцип в этот напряжённый период — предупреждение, а не тушение пожаров. Нагрузочное тестирование — чтобы найти «узкие» места, мониторинг с уведомлениями — чтобы среагировать до того, как проблема станет катастрофой, и, конечно, резервное копирование — чтобы быть готовым к худшему сценарию.
Ваш сайт готов выдержать шторм трафика, и значит, готов конвертировать этот трафик в нечто большее.
💻 Виртуальные серверы по цене от 139 рублей в месяц заказывайте на сайте RUVDS. Первые 3 дня пользуйтесь VPS бесплатно!