Как мы ускоряем сайты на 1С-Битрикс
Автор: Вячеслав Аржаев
Мы используем собственный метод разработки сайтов на Битрикс, с целью ускорения. Основная проблема Битрикс - использование на каждой странице сайта всего функционала с подгрузкой огромного количества нужных, лишь в некоторых случаях, файлов.
[spoiler]
Это приводит к большому количеству используемых файлов, там где в этом нет необходимости и как следствие к медленной работе и очень сложной и трудоемкой оптимизации. Проблема хорошо известна всем, кто работает с Битрикс.
На своих проектах мы делаем у сайта с фронта - два режима.
Для всех пользователей, кроме админов - в этом режиме мы используем только основные функции Битрикс, все лишнее и ненужное, не используем.
Количество используемых файлов уменьшается, html код страниц близок к html макету.
Стараемся js и css файлы использовать только при необходимости (только те, что нужны на страницах), то есть - для всех страниц - используются js и css файлы для шапки и футера, плюс на Главной странице - свои файлы, в корне Каталога - свои, в разделе каталога - свои и на детальной странице товара - свои.
Замер скорости до начала работ
Замер скорости после
В js не используем битриксовский BX, используем библиотеки, которые используются в верстке html макетов, обычно это jquery и различные плагины.
Не используем стандартные формы Битрикс с фронта (только результаты в админке), css - подключаем в шапке, js - всегда после футера.
При необходимости переделываем компоненты Битрикс для ускорения работы.
На реальных проектах - компонент bitrix.catalog.section делает более 2000 запросов к БД
Наш переделанный - около 20
При этом ядро Битрикс мы не трогаем, система без проблем обновляется, ничего не ломается.