Как выбрать VPS для сайта и приложения: ресурсы, цена и проверка
Выбор VPS по нагрузке, CPU, RAM, дискам, сети и резервным копиям. Что проверить перед оплатой и как рассчитать полную стоимость сервера.
Опубликовано: · Обновлено:
Начните с приложения и его нагрузки
Выбирайте VPS по тому, как работает ваш проект: какие процессы должны выполняться постоянно, где хранится база и сколько памяти занимают сервисы. Число посетителей без сведений о кэшировании, запросах и фоновых задачах не позволяет надёжно рассчитать конфигурацию.
Для начала запишите стек, размер базы и файлов, среднюю и пиковую нагрузку, аудиторию и допустимый простой. Сайт на CMS, API, бот, магазин и сервис обработки видео используют ресурсы по-разному. Если сервер нужен только для готового статического сайта, сначала сравните статический хостинг. Для деплоя приложения из Git проверьте подходящую PaaS.
- Какие компоненты работают одновременно: веб-сервис, база, очередь, фоновые задачи.
- Какие данные должны сохраняться после перезапуска и повторного деплоя.
- Какие внешние соединения нужны: SMTP, платёжные API, registry, хранилище.
- Как быстро нужно восстановить проект и какой объём данных допустимо потерять.
Сравнивайте гарантированную CPU и архитектуру
vCPU — виртуальное ядро процессора. У shared CPU процессорное время делится между несколькими машинами; у выделенных конфигураций условия другие. В облаках встречается гарантированная доля CPU: одинаковые «2 vCPU» могут давать разный доступный ресурс при постоянной нагрузке.
Например, Yandex Cloud описывает уровень производительности как гарантированную долю времени физических ядер. Для рабочего проекта сопоставляйте этот параметр вместе с числом vCPU и проверяйте свою нагрузку. Короткий всплеск и непрерывное вычисление имеют разные требования.
Проверьте архитектуру x86-64 или ARM64. Наличие Docker не гарантирует совместимость: нужны подходящие образы и нативные библиотеки. При переносе между архитектурами может понадобиться новая установка окружения и перенос данных вместо восстановления полного образа машины.
Подберите память и проверяйте диск
RAM нужна всем работающим компонентам. Сложите использование приложения, базы и фоновых процессов, добавьте запас на пик и обслуживание. Если база находится на той же машине, выделять всю память веб-процессу нельзя. Нехватка памяти может приводить к завершению процессов или активному использованию swap.
Для диска важны объём, задержки, IOPS и пропускная способность. IOPS показывает число операций ввода-вывода; этот лимит особенно заметен у баз данных и множества небольших файлов. Слово NVMe само по себе не гарантирует одинаковую скорость виртуальных дисков.
В некоторых облаках производительность диска зависит от его размера и конфигурации машины. Испытайте копию проекта с типичными запросами. Синтетический тест проводите на отдельном тестовом файле, а не на рабочем блочном устройстве с данными.
Проверьте сеть, IP и ограничения
Оцените задержку до пользователей и между компонентами приложения. Регион близко к аудитории полезнее громкого названия площадки. Если приложение и база находятся в разных сетях, измерьте их взаимодействие и посчитайте передачу данных.
Уточните наличие и стоимость IPv4, доступность IPv6, лимит трафика, полосу канала и защиту от DDoS. IPv6-only конфигурация требует совместимости пользователей и внешних сервисов; её нельзя автоматически считать полной заменой публичного IPv4.
Политика портов различается. До переноса проверьте отправку служебных писем, доступ к внешним API и загрузку контейнеров. Если провайдер ограничивает SMTP, нужны допустимый способ разблокировки или внешний почтовый сервис. Не проверяйте это впервые после отключения прежнего сервера.
Разберите резервное копирование и восстановление
Снимок диска и согласованная копия базы решают разные задачи. Снимок работающей машины может не обеспечить целостность всех данных. Уточните, включает ли он дополнительные диски, сколько копий хранится и где находится резерв.
Hetzner отдельно предупреждает, что backup и snapshot не включают подключённые Volumes и не гарантируют согласованность работающей машины. Для базы используйте подходящий механизм резервного копирования и проверьте восстановление в отдельной среде.
План восстановления должен охватывать файлы, базу, конфигурацию и необходимые секреты. Зафиксируйте время восстановления и допустимую потерю данных. Репликация дисков у провайдера не заменяет независимую копию от случайного удаления или ошибки приложения.
Посчитайте стоимость и границы обслуживания
В полный бюджет входят не только CPU и RAM. Добавьте диск, IP, сеть, резервные копии, лицензии панели и операционной системы, а также администрирование. Для облака отдельно считаются база, объектное хранилище и балансировка.
Проверьте срок обязательной оплаты, цену после акции и правила прекращения начислений. У некоторых платформ выключенная машина продолжает тарифицироваться до удаления. У других отдельные ресурсы оплачиваются независимо от состояния вычислений. Условия нужно проверить для выбранной услуги.
Техническая поддержка и сопровождение вашего приложения — разные объёмы работ. Уточните, кто обновляет ОС, следит за сервисами, настраивает копии и восстанавливает проект. Если нет опыта администрирования, сравните управляемый VPS или PaaS вместе с их ограничениями.
Проведите приёмку до смены DNS
Разверните копию своего стека, проверьте обычную и пиковую нагрузку, отправку почты и внешние подключения. Затем выполните повторный деплой с сохранением данных и восстановите резервную копию. Эти проверки дают больше полезной информации, чем одинаковые цифры в двух рекламных тарифах.
До переезда сохраните рабочую среду и план отката. Отдельно проверьте, как увеличиваются и уменьшаются ресурсы. Например, переход на тариф с меньшим диском может требовать новой машины и переноса данных даже при небольшом фактическом заполнении.
После проверки сравните несколько конфигураций с одинаковым составом ресурсов и сроком оплаты. Выбирайте вариант, который покрывает вашу нагрузку и который вы сможете обслуживать и восстановить.
Критерии для сравнения
| Критерий | Что выяснить | Для чего это нужно |
|---|---|---|
| CPU | Тип ресурса, гарантированная доля, архитектура | Постоянная нагрузка и совместимость |
| RAM | Потребление всех процессов и запас | Избежать нехватки памяти |
| Диск | Объём, IOPS, пропускная способность | Работа базы и файлов |
| Сеть | Задержка, IP, трафик, порты | Доступность приложения и интеграций |
| Резерв | Состав копии и восстановление | Возврат проекта после сбоя |
| Обслуживание | Ответственность за ОС и приложение | План поддержки и полный бюджет |