Стоимость: 25 000 ₽ (одноразовая лицензия, без продления)
Назначение
Модуль предназначен для оптимизации объёма таблицы b_crm_act в Битрикс24 за счёт интеллектуальной очистки HTML-кода писем и других активностей. Таблица часто разрастается до сотен мегабайт и даже гигабайт из-за «мусорных» тегов, inline-стилей, VML-разметки, комментариев и атрибутов, которые генерируются почтовыми клиентами и редакторами.
Модуль не удаляет записи — он чистит содержимое поля DESCRIPTION, сокращая его объём без потери полезной информации. Это позволяет:
- Уменьшить нагрузку на базу данных и файловую систему.
- Ускорить выборки по CRM-активностям.
- Сэкономить дисковое пространство.
- Повысить общую производительность Битрикс24.
Как работает
-
Модуль подключается к таблице
b_crm_actи выбирает записи типа «Письмо» (TYPE_ID = 4), созданные после заданной даты (настраивается в коде). -
Для каждой записи HTML-код поля
DESCRIPTIONпропускается через ультра-агрессивный очиститель:- Удаляются все комментарии, условные комментарии IE, VML-разметка.
- Вырезаются все атрибуты
style,class,mso-*,width,height,alignи другие. - Удаляются теги
<span>,<div>без потери текста. - Очищаются таблицы — остаются только
<table>,<tr>,<table>без атрибутов. - Убираются namespace-теги (например,
<u1:...>). - Устраняются лишние пробелы, переносы строк.
-
Если после очистки размер HTML уменьшился (сохранено хотя бы 1 символ), запись обновляется в БД. При отсутствии изменений запись пропускается.
-
Процесс идёт пачками (по умолчанию 100 записей за итерацию), с сохранением состояния в
localStorage. Обработку можно запустить, остановить и продолжить с того же места.
Интерфейс управления
Веб-интерфейс (отдельная страница) предоставляет:
- Запуск / остановку обработки.
- Настройку лимита записей за один пакет (10–1000).
- Выбор стартового ID для продолжения с определённого места.
- Живые счётчики:
- Обработано записей
- Обновлено записей (где нашлись изменения)
- Без изменений
- Сохранено символов (и байт)
- Скорость обработки (записей/сек)
- Следующий ID для обработки
- Лог выполнения с цветовой индикацией (успех, предупреждение, ошибка).
- Панель отладки:
- Проверка конкретной записи (анализ без обновления).
- Принудительное обновление записи.
- Просмотр «до/после» в отдельном окне с подсветкой различий.
Результаты и эффективность
В ходе тестирования на реальных данных удалось достичь:
- Сокращение размера писем на 40–70%.
- Экономия десятков и сотен мегабайт в таблице
b_crm_act. - Ускорение запросов к CRM-активностям (выборка, поиск, фильтрация).
Пример лога:
Обработано 500 записей за 12 сек. Обновлено: 480, без изменений: 20. Сохранено: 1 250 000 символов (1.19 МБ). Скорость: 41 записей/сек.
Установка и использование
-
Разместите два файла (
index.php– интерфейс,res.php– обработчик) в любой папке на сервере (например,/upload/cleaner/). -
Откройте в браузере страницу
index.php. -
Установите лимит и при необходимости начальный ID.
-
Нажмите «Начать обработку». Модуль будет работать фоном, пока вы не остановите или не закроете страницу.
-
При остановке состояние сохраняется – можно продолжить позже.
-
После завершения обработки всех записей состояние очищается.
Преимущества перед штатными средствами
- Не удаляет данные – только оптимизирует.
- Безопасность – перед обновлением проверяется наличие изменений, лишних UPDATE не происходит.
- Возможность отладки – можно проверить любую запись до массовой обработки.
- Адаптивность – настраивается лимит, стартовый ID, фильтр по дате.
- Не требует агентов и cron – работает в ручном режиме, не нагружает сервер в часы пик.
- Поддерживает большие объёмы – пагинация 100+ записей, сохранение прогресса.
Поддержка и гарантии
- Техническая поддержка – 1 месяц бесплатно, далее по договорённости.
- Гарантия работоспособности – модуль протестирован на коробочных версиях Битрикс24.
- Возможна доработка под специфику вашей БД (добавление фильтров, своих правил очистки).
Лицензия бессрочная, на один экземпляр Битрикс24. Код не зашифрован – возможна модификация под свои задачи.

