1. Главная
  2. Блог
  3. 1С-Битрикс
  4. Проблемы резервного копирования в 1-С Битрикс на Shared хостинге (на примере sweb.ru)

Проблемы резервного копирования в 1-С Битрикс на Shared хостинге (на примере sweb.ru)

18 Декабря 2018
565
Появилась задача: «Разобраться с резервным копированием».
Сайт находится на shared хостинге spaceweb.

Что такое shared хостинг и с чем его едят?

Это самый дешевый вид хостинга для размещения простых вебсайтов. Загружаем по FTP исходные коды своего сайта и получаем доступ к общей СУБД MySQL. Никаких дополнительных функций обычно не предоставляется. Настройки сервера и ПО, наличие приложений и поддерживаемых языков программирования пользователь не контролирует. Один из недостатков – невозможность контролирования неполадок без обращения в техническую поддержку.

Альтернативой этому будут VPS (Virtual Private Server) и VDS (Virtual Dedicated Server). Это виртуальный выделенный сервер. Несколько виртуальных серверов работают на одной физической машине, но при этом пользователю выделяется гарантированное количество ресурсов, таких как объем постоянной и оперативной памяти, а также фиксированное количество ядер процессора. В этом случае пользователь имеет много возможностей по настройке и мониторингу, но он при этом должен обладать знаниями по настройке, либо нанимать сисадмина (мы, кстати, такое делаем).
Также есть Dedicated server (выделенный сервер, DS, дедик, dedic) – это целый компьютер – физическое устройство целиком от блока питания до сетевой карты. Пользователь является полноправным владельцем всей железяки и может делать с ней всё, что заблагорассудится.

Что-то пошло не так (ведь у нас же shared хостинг)

Напомню, что у нас, на сайте одного из клиентов возникла ошибка при создании резервной копии стандартными средствами CMS 1С-Битркис.

Автоматическое резервное копирование не может нормально завершиться и процесс переходит в состояние UNKNOWN буквально через 15-20 секунд.


А во время ручного резервного копирования с экрана просто пропадал индикатор прогресса - ни уведомлений об ошибках, ни об успешном завершении процесса, вообще ничего.

На shared хостинге sweb логи посмотреть невозможно, а за разъяснением причин приходится звонить или писать в ТП. Тут нет никаких претензий, трубку снимают быстро, на вопросы отвечают хорошо.

Специалист рассказывает, что после запуска процесса было превышение допустимой нагрузки и выполнение было прервано без суда и следствия. То есть, если какой-то процесс использует более 10% процессора более тридцати секунд, то он принудительно останавливается. Так же нас уверили, что пространство выделяется не динамически, и не должно быть проблем, связанных с свободным местом на сервере.

В 1С-Битрикс есть только 3 параметра, позволяющие ограничивать нагрузку на CPU:

  • Отключить компрессию архива
  • Длительность шага
  • Интервал
С компрессией всё, вроде, очевидно: нет сжатия – нет нагрузки на процессор, но это не решало задачу. Длительность шага и интервал регулируют соотношение работы и простоя процессора при выполнении задачи. Настройка по умолчанию предлагает процессу 20 секунд работать, напрягая CPU, потом на 1 секунду приостанавливать всевозможную деятельность, чтоб процессор мог отдохнуть. Вроде всё вписывается, однако результат отрицательный – по-прежнему процесс переходит в UNKNOWN. А это означает, что он вдруг перестал отвечать и, скорее всего, перестал делать свою основную работу.

Поступило предложение «поиграться с формой квадрата» и, тем самым, попробовать подобрать рабочие настройки империческим путем, потому что каких-либо рекомендаций не существует.

Понятное дело, что можно было бы сразу выставить что-нибудь в духе 1/10, но при этом процесс резервного копирования занимал бы неприлично много времени.

Результат стал положительным только при настройке 5/5 секунд и менее, что, наверное, можно считать оптимальными настройками для корректной работы бэкапов 1С-Битрикс на shared-хостингах.



Выяснилось, что у сервера есть еще одно ограничение, которое техподдержка «недоговорила» - при нагрузке более 50% время не должно превышать 10 секунд! Вот почему стандартный вариант 20/1 не работал. Справедливости ради, надо добавить, что резервное копирование, скорее всего, не совсем честно соблюдает установленные ограничения на потребление ресурсов, и нагрузка может быть несколько выше предполагаемой. Да и сервер, скорее всего, измеряет ее с какой-то погрешностью, и вряд ли он «ошибается» не в свою пользу. Поэтому варианты формата 9/1 тоже не заработали. 1 секунда оказалось слабой передышкой.

Техподдержка предлагала еще одно решение: По запросу они могли выключить систему отслеживания нагрузки на 30 минут, но это точно не для случаев автоматического резервного копирования – перед созданием каждой резервной копией же они не будут это делать :). Но можно проверить, что причина именно в превышении лимитов нагрузки, выполнив ручное резервное копирование при отключенной системе контроля нагрузки.

Вместо заключения

На сегодняшний день разница в стоимости shared хостинга и VDS/VPS не столь велика, и при совершении выбора стоит хорошо задуматься, нужна ли за столь малые деньги столь многая скорбь?

Есть вопросы? Записывайтесь на консультацию – 8 800 201-07-68.
Она бесплатная и ни к чему вас не обязывает :)
8 800 201-07-68
Консультации по решению