Бесплатно по всей России 8 800 7000 169 site@iarga.ru
Оставить заявку

Техническая поддержка битрикс-проекта

Время чтения: Время чтения: 15 мин.
Нет времени читать?

У меня есть сайт, нужно, чтобы он нормально работал

Чаще всего обращаются за техподдержкой именно с такой формулировкой.

Из-за особенностей разработки и сопровождения, в проектах постепенно накапливаются технические проблемы, которые, начинают вредить работе, мешать покупателям, снижать прибыльность.

И когда потери начинают превышать возможную стоимость техподдержки, клиент приходит к нам.

Разберем стандартный кейс поддержки на примере проекта bytzapchast.ru

Проблемы

  1. При обмене с 1С не всегда приходят новые разделы/товары
  2. Периодически на сайте какие-то разделы оказываются в корне сайта
  3. Не создаются резервные копии
  4. Иногда сайт выпадает SQL ошибку «Got error 28 from storage engine» - чаще на выходных
  5. Сайт открывается 5-6 секунд, иногда не открывается вовсе
  6. SEO теги и тексты некорректно подтягиваются к разделам

Поехали решать

При обмене с 1С не всегда приходят новые разделы/товары

Далеко не все проблемы можно отследить сразу. Например, обмен с 1С запускается автоматически с определенной периодичностью. Так же и резервное копирование. И нужно некоторое время наблюдать за ним, чтобы собрать проблемы и решения.

В этом нам помогут логи.

Логирование обмена с 1С и сохранение всех файлов обмена включается константой define("BX_CATALOG_IMPORT_1C_PRESERVE", true); в файле dbconn.php

Теперь по прошествии некоторого времени, мы всегда можем отследить, что именно происходило в обмене и каков результат.

Обмен с 1С был реализован в двух режимах

  • Постоянный с периодичностью в 5 минут обмен изменениями
  • И постоянный же, с периодичностью в сутки обмен полным каталогом (около 10 000 товаров)

Первый оперативно передавал на сайт изменения цен и остатков, корректировки в товарах.

Второй отвечал за удаление выводимых с сайта товаров (функция «деактивировать товары, не попавшие в выгрузку»).

Сразу отследили ряд проблем.

Первое - 1С не регистрировал изменения в товарах. То есть изменение цены или наличия приводило к попаданию товара в обмен. А например, переименование или перемещение в другой раздел - нет.

Исправили при помощи 1С специалиста

При полном обмене каталога иногда происходил сбой из-за высокой нагрузки на сервер. При этом не все товары успевали догрузиться.

Перенастроили систему на отправку более мелкими пакетами с большими паузами - проблема исчезла.

Периодически на сайте какие-то разделы оказываются в корне сайта

Имея копии выгрузки за период времени, мы легко заметили, что данные передаются корректно, а сайт генерирует сбои при их обработке. Залезли в код событий, оставленный предыдущими разработчиками, нашли ошибку, приводящую к «выбрасыванию» некоторых разделов в корень сайта.

Не создаются резервные копии

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

Но для надежной работы, PHP на сервере должен иметь доступ ко всем файлам сайта. В нашем случае это было не так. И как итог, система начинала резервное копирование, доходила до файла с проблемным доступом и останавливалась. Выдавала ошибку и начинала заново. А на сервере появлялись «заготовки» резервных копий.

Когда этих заготовок накапливалось больше сотни, сервер забивался и приводил к ошибке: «Get error XX from storage engine»

Поправили доступ и решили проблему и с резервированием и с местом на сервере одновременно.

Сайт открывается 5-6 секунд (страницы брендов до 20 секунд), иногда не открывается вовсе

Вот это тема отдельной статьи. Как мы ускорили сайт в 10 раз, не меняя сервера, читайте в отдельной статье https://iarga.ru/article/bitrix-go-fast/

SEO теги и тексты некорректно подтягиваются к разделам

Это было довольно сложно. В сайте сложная логика генерирования SEO заголовков с поддоменами по городам, брендами из фильтров и текстами.

Логику разобрали, код переработали. Проблема больше не наблюдается.


Суммарно время на решение задачи около 3 недель. После этого можно зафиксировать корректную работу сайта, создать тестовую среду для отладки и осторожно начинать принимать на оценку задачи.


Читайте так же

Обсудить проект

Обсудить