Как подобрать оптимальный хостинг для сайта на Битрикс
Как подобрать оптимальный хостинг для сайта на Битрикс
Обратите внимание! Мы больше не разрабатываем интернет-магазины на Битрикс с нуля, а только дорабатываем и поддерживаем уже готовые проекты!
Выбор правильного хостинга для сайта на «1С-Битрикс» – это инвестиции в качество его работы, отсутствие проблем или вероятность их безболезненного решения.
Даже если создание интернет-магазина или другого проекта на «Битрикс» осуществлялось по всем правилам и с учетом логики выбранной CMS, при некорректном выборе хостинга вряд ли удастся добиться хороших показателей производительности сайта.
В статье детально разберем минимальные и рекомендуемые параметры сервера, представим мнения хостинг-провайдеров и разработчиков о том, как стоит подходить к выбору площадки для размещения веб-сайта.
Официальные требования к хостингу
На сайте «Битрикс»
В вопросе выбора оптимального сервера начать стоит с официальных рекомендаций разработчика CMS.
На сайте «1С-Битрикс» указаны довольно стандартные минимальные требования:
Веб-сервер
Apache 1.3 и выше
Система управлением базами данных
MySQL 5.6 и выше
Скриптовый язык
PHP 7.1 и выше (рекомендуемая версия – 7.2)
Разработчик отмечает, что для работы сайта подойдет любой хостинг, который соответствует минимальным требованиям, на любой платформе UNIX или MS Windows.
Соответствие сервера этим требованиям можно легко определить:
Загрузите на сервер скрипт bitrix_server_test.php.
Откройте его в интернет-браузере, введя адрес: {ваш_домен} /bitrix_server_test.php
Нажмите кнопку «Начать тестирование».
В скрипте проверки сервера
Как видно, на странице проверки требования и рекомендации существенно шире, чем на официальном сайте (данные представлены на апрель 2020 года):
Общая конфигурация
Версия веб-сервера
Требуется Apache 1.3.0 и выше или IIS 5.0 и выше
Интерфейс PHP
Рекомендуется запускать PHP как модуль Apache, это быстрее чем CGI и даёт более гибкие настройки
Версия PHP
Требуется 7.1
Значение memory_limit
Ограничение памяти должно быть не ниже 32 Мб (64 Мб для старших редакций начиная с «Эксперта»). Неиспользуемые PHP модули в PHP.ini желательно отключить чтобы увеличить размер памяти, доступной для приложений.
Отправка почты
Попытка вызвать функцию mail()
Функции работы с сокетами
Необходимы для работы системы обновлений
Сохранение сессии
Необходимо для сохранения авторизации
Сохранение сессий без UserAgent
Необходимо для апплета множественной загрузки файлов и обмена с 1С
Система обновлений
Попытка подключиться к серверу 1c-bitrix.ru на порт 80
HTTP авторизация
Требуется для интеграций с 1С и MS Outlook. Подключение к {ваш домен} на 80 порт
Тест на время
Попытка выполнять скрипт в течение 60 секунд
Тест на время с нагрузкой на процессор
В ряде случаев скрипты отключаются при превышении нагрузки на процессор
Акселератор PHP
Рекомендуется наличие акселератора PHP (APC, XCache или любого другого кроме устаревшего EAccelerator), это позволяет снизить нагрузку на CPU в несколько раз и уменьшить время выполнения PHP кода. Желательно, чтобы памяти акселератора было достаточно для размещения всех часто используемых PHP страниц. Рекомендуется установить фильтры, например (для eA): eaccelerator.filter !*/help/* !*/admin/* !*/bitrix/*cache/* */bitrix/* */.*.PHP
Если акселератор не обнаружен, требуется анализ PHPinfo()
max_input_vars (количество входных переменных, которые могут быть приняты в одном запросе)
Должно быть не меньше 10000
Файловая система
Место на диске
Не менее 500 Мб для редакции "Старт" и не менее 1500 Мб для редакции "Бизнес"
Время на создание 1000 файлов (сек)
Нормальное время - до 2 секунд
Расширения PHP
Zlib extension
Требуется для работы модуля компрессии и быстрой загрузки обновлений
GD lib extension
Отображение графиков в статистике, работа с изображениями
Free Type extension
Необходима для работы CAPTCHA
Модули шифрования
Требуется для резервного копирования в облако
Модуль Hash
Требуется резервного копирования в облако
Поддержка SSL
Необходима для работы интернет-магазина с подключением внешних платёжных систем
Поддержка mbstring
Необходима для работы продукта в кодировке UTF-8
Конфигурация MySQL
Функции MySQL
Обязательно наличие функций MySQL
Требования «Битрикс» к провайдерам-партнерам для получения компетенции «Хостинг PHP»
Определенные параметры предъявляет компания-разработчик CMS к хостинг-провайдерам для получения партнерского статуса:
«Сертифицированный хостинг»
«Рекомендуемый хостинг»
Для тарифов «Битрикс» и для тарифов, представленных для получения компетенции уровня «Рекомендуемый» — дополнительно
Версия веб-сервера: Apache 1.3 и выше.
Версия MySQL: 5.0 и выше.
Версия PHP: 5.3 и выше (с 1 января 2018 года — PHP 5.6 и выше).
Safe mode в PHP: отключен.
Сохранение данных сессии: Да.
Передача данных HTTP авторизации в PHP через переменные окружения (для интеграции с 1С).
Разрешен short_open_tag в PHP: Да.
Значение memory_limit в PHP (и реальное ограничение памяти): 32 Mб и выше.
Отправка почты: Да.
Функции работы с сокетами: подключение к серверу bitrixsoft.ru на порт 80.
Создание файлов и папок от процесса, выполняющего PHP, запуск созданных файлов.
Загрузка файлов (картинки должны корректно отображаться).
Обработка .htaccess.
Поддержка InnoDB в MySQL.
Не менее 5 одновременных соединений к базе (параметры max_connections, max_user_connections).
Наличие акселератора PHP: любой настроенный и стабильно работающий акселератор (eAccelerator, APC, XCache, Zend OPcache или другой).
Возможность установки time_limit в PHP для скрипта на 1 минуту и более.
Поддержка SSL в PHP (возможность работы с SSL сокетами).
Для тарифов VPS и вирт. машин - не менее 512 Мб RAM.
Обязательно наличие модулей PHP:
Regex functions
Perl regex functions
Zlib extension
GD lib extension
Free Type extension
Функции MySQL:
mbstring
Рекомендуется:
Двухуровневая архитектура веб: Apache + nginx (или кеширующий прокси).
Работа PHP как модуль Apache (mod_PHP).
Отключен open_basedir в PHP.
Из этих требований и рекомендаций также складывается представление о том, на какой сервер нужно ориентироваться для запуска проекта на CMS «1С-Битрикс».
На что ориентируют хостеры и разработчики
Компания Klondike, занимающаяся digital-маркетингом и продвижением, предлагает ориентироваться при выборе хостинга на такие параметры:
Характеристики
Минимальные требования
Рекомендованные параметры
Возможность установки версии PHP
не ниже 7.1
не ниже 7.4
Версия MySql
от 5.7
от 5.7
Директива PHP memory_limit
от 512 Мб
от 4096 Мб
Директива PHP mbstring.func_overload
2
2
Директива PHP mbstring.func_overload
UTF-8
UTF-8
Возможность включения PHP-акселераторов
Zend OPcache или APC
Zend OPcache
Оценка «Монитора производительности Битрикс»
30
90-320
SSL
возможность установить SSL-сертификат Let's Encrypt
возможность установить SSL-сертификат Let's Encrypt
Свободное пространство на сервере
не менее двойного размера сайта
не менее тройного размера сайта
Сервер должен проходить официальный тест 1с-Битрикс
SSH-доступ
Рекомендуемая технология Nginx+apache2+PHP-FPM
Самая быстрая Nginx+PHP-FPM
Рекомендуемое окружение + 1C-Битрикс: Виртуальная машина
Системные:
Процессор
не менее 1 ядра 2000 МГц
максимально быстрый процессор, 8-9 ой серии*
Жесткий диск
SSD**
NVMe SSD**
RAID 1
2 диска
2-3 диска и более***
Оперативная память
не менее 1 Гб
16Gb – 64 Гб****
* Высокочастотный процессор с меньшим количеством ядер приоритетнее, чем больше количество ядер с меньшей частотой – некоторые процессы невозможно распараллеливать.
** В крайнем случае HDD, но рассматривать его исключительно как хранилище для upload. Разница между NVMe SSD и обычным SSD составляет более 30% производительности, в ряде тестов более 700%.
*** Желательно наличие отдельного от RAID-массива диска для резервных копий.
**** Все лишнее можно использовать под PHP, Mysql, Sphinx. Не меньше 8, а желательно от 16 Гб и более. При использовании VPS/VDS серверов нужно помнить, что некоторые виды виртуализации сделаны так, что выделенные 512 Мб реально имеют меньший объем, поскольку в эту память входит и поддержка самого контейнера. В таком случае рекомендуется брать тариф на 1 выше минимально подходящего.
Поскольку рекомендации уже основаны на непосредственном опыте, в них содержатся не только технические параметры, но и советы по выбору хостинг-провайдера, у которого планируется размещать сайт на «Битрикс».
Что же говорят провайдеры?
Например, Timeweb предлагает ориентироваться на характеристики, основываясь на тип лицензии «Битрикс». В этом есть рациональное зерно, так как каждая редакция подразумевает определенные возможности и требуемую производительность сервера.
Старт
Стандарт
Малый Бизнес
Эксперт
Бизнес
Энтерпрайз
Тип хостинга
Виртуальный (shared)
VPS (виртуальный выделенный сервер)
VDS (виртуальная машина)
Объем дискового пространства, Гб
от 1–3
от 5
от 10
Максимальное количество одновременных процессов (FastCGI)
от 4
от 4
от 8
Максимальное время выполнения скрипта, сек
от 60
от 120
от 180
Лимит памяти на процесс, Мб
от 32
от 64
от 128
Оперативная память, Мб
от 512
от 1024
от 2048
При выборе конкретного «железа» и тарифа провайдер рекомендует исходить из потенциальных масштабов планируемого проекта.
Так, для небольшого корпоративного сайта на редакции «Старт» вполне подойдет стандартный виртуальный хостинг. Главное, чтобы сервер соответствовал минимальным параметрам, предъявляемым разработчиками CMS, и проходил проверку bitrix_server_test.php.
Для разработки интернет-магазинов на «Битрикс» и других более масштабных ресурсов (порталы, маркетплейсы) с большой долей вероятности потребуется выделенный сервер с хорошими параметрами.
Как выбрать подходящий хостинг или сервер
Что ж, характеристик, на которые можно ориентироваться, более чем достаточно. Зная их, вполне можно подобрать тариф или сервер, на котором «Битрикс» будет гарантированно работать.
Но решают ли эти цифры проблему?
Нет!
Даже зная конкретные параметры сервера, сложно подобрать оптимальный вариант для сайта конкретного типа, масштаба, функционала. На практике все очень индивидуально.
Конечно, можно стрелять из пушки по воробьям и брать «с запасом». Но это, на наш взгляд, не совсем корректный подход для бизнеса, когда любые лишние расходы сокращают реальную прибыль.
Рекомендации провайдеров
С вопросом о том, как правильно подобрать хостинг для сайта на CMS «Битрикс», мы обратились к нашему партнеру – провайдеру Tucha.ua. Как правило, именно его услугами мы рекомендуем пользоваться нашим клиентам. Но об этом ниже.
А пока предлагаем мнение директора хостинг-провайдера Tucha Владимира Мельника:
Опыт, накопленный нами за истекшие 15 лет деятельности, показывает, что в достаточно точной степени предсказать, какие ресурсы будут необходимы серверу для того, чтобы обеспечить те или иные показатели работы веб-сайта, попросту невозможно, так как эти показатели зависят не только от интенсивности обращений к веб-сайту, но и от того, что именно веб-сайт делает при их обработке.
Важно понимать, что тестирование производительности работы веб-сайтов, выполняющих, казалось бы, одинаковые функции, может показывать совершенно разные результаты для этих веб-сайтов на одном и том же сервере, потому мы при всём желании не можем делать заявления в духе «магазину на 1000 товаров с 1000 посетителями в день нужно 1000 единиц некоего ресурса».
Большая часть такого рода предсказаний может оказаться ложью, увы. :-(
Думаю, начинать всегда стоит с минимальной конфигурации, тестировать и, если будет необходимо, добавлять вычислительные ресурсы и тестировать снова.
Также производительность зависит и от того, есть ли трафик. То есть до того, как на новый сервер начнёт поступать реальный трафик. Скорость обработки запроса будет отличаться от скорости обработки точно такого же запроса после того, как будут реальные пользователи, так как при этом изменится и нагрузка на сервер. Вполне может быть, что после реального запуска проекта ресурсы придётся добавлять. Так иногда бывает.
Хостинг Tucha предлагает два типа решений для размещения проектов на «Битрикс»:
TuchaBit: аренда облачных VDS/VPS серверов в Украине
TuchaFlex+: аренда зарубежных виртуальных серверов
Мнение и рекомендации разработчика
Об опыте подбора подходящих конфигураций хостинга и серверов для проектов на «1С-Битрикс» рассказывает директор веб-агентства «Красный хамелеон» Николай Саранюк:
Чтобы подобрать адекватный тариф и «железо» для запуска сайта клиента, мы отталкиваемся от количества товаров, трафика и рекомендуем начинать с какой-то стартовой конфигурации. Как правило, начинаем с 2 ядер процессора и 2 Гб оперативной памяти. Тестируем минимально необходимые для проекта параметры, после чего принимается решение о повышении мощности, если текущая конфигурация «не вытягивает». Хватает при нагрузке ресурсов – все ОК, оставляем конфигурацию и следим за состоянием, скоростью и производительностью.
По сути, «железо» – ядра и память – каждый раз подбирается индивидуально.
Если очень упрощенно, то начинать следует с таких параметров:
с 1 ядра и 1 Гб оперативной памяти для корпоративного сайта;
с 2 ядер и 2 Гб оперативки для интернет-магазина.
Также индивидуально подбирается размер дискового пространства. Бывают проекты, где только фотографии «весят» под 400 Гб. Соответственно и жесткий диск берется с запасом.
Для «Битрикса» очень важна высокая тактовая частота. Причина в том, что API CMS строит достаточно тяжелые запросы. А чтобы их быстро выполнять, нужен высокочастотный процессор. На рынке есть хостеры, заявляющие среди параметров своих серверов процессоры с частотой 5 ГГц. Если это предложение реально, то именно такие мозги нужны, чтобы ваш сайт на «Битрикс» «летал».
Оперативная память и диски тоже должны быть «резвыми», чтобы конфигурация была сбалансированной и ни один элемент не тормозил работу всей системы.
Нюансов может быть очень много. И поэтому важно пробовать и подбирать конфигурации. Смотрите только на хостинги, предоставляющие бесплатный пробный период. Тестирование на конкретном сервере в режиме реальной эксплуатации дает понять, подходит конфигурация или нет.
Выбирайте провайдера, который дает возможность легко переходить с одного тарифа на другой. Так вы сможете при необходимости нарастить мощности, если производительности не будет хватать или же откатиться на менее затратный вариант, если изначально «замахнетесь» на большее.
И еще один важный момент. Хорошая техподдержка. Иногда можно даже пожертвовать каким-то техническим параметром, но получить реальную возможность в случае возникновения проблем решить их. Именно поэтому мы рекомендуем хостинг Tucha.ua. У них самая адекватная техническая поддержка среди всех компаний, с которыми мы когда-либо работали.
Подведем итоги
Как выбрать оптимальный хостинг для сайта на «Битрикс»
От
€20
От 1 месяца
Порядок действий для выбора оптимального хостинга прост:
Подобрать вариант хостинга с гибкими настройками, переходами между тарифными планами, хорошей поддержкой и бесплатным тестовым периодом.
3️⃣ Оформляем тестовый период
Заказать тест минимально необходимой под проект конфигурации сервера.
4️⃣ Оцениваем совместимость
Проверить совместимость «железа» с CMS «Битрикс» с помощью официального инструмента от разработчиков – bitrix_server_test.php.
5️⃣ Выгружаем проект
Выгрузить тестовый или подготовленный к запуску сайт на сервер, подключить базу данных и провести необходимые настройки.
Проверить работоспособность проекта, отображение и основной функционал.
6️⃣ Тестируем производительность
Провести доступные тесты производительности, чтобы понять, достаточно ли ресурсов для быстрой и безошибочной работы каталогов, загрузки страниц, работы приложений.
Для тестов исользовать инструменты оценки скорости, монитор производительности «Битрикс» для сравнения оценок с эталонными значениями.
7️⃣ Принимаем решение
Далее по обстоятельствам: оставаться на выбранном тарифе или наращивать мощности для корректной и комфортной работы и возвращаться к пункту 6.