Композит – ваш сайт не тормозит Антон Герасимюк Ведущий разработчик, 1C-Битрикс Партнерская конференция 2015
Технология, на которой можно заработать Запуск технологии кэширования в апреле сайтов на композите 6000 потенциальных клиентов Партнерская конференция 2015 #bitrixconf2015
Как работает Партнерская конференция 2015
Зачем Партнерская конференция 2015 Отклик сайта в 100 раз быстрее Лучшее ранжирование сайтов в Яндекс и Google Повышение конверсии интернет- магазина
Интеграция сайта в композит Все шаблоны компонентов по умолчанию голосуют против т.к. важны: Безопасность пользовательских данных Эффективность работы композита (без постоянной перезаписи кеша) Интеграция: Code Review существующего кода шаблонов и компонентов Динамические области Рефакторинг кода, который перезаписывает кеш Партнерская конференция 2015 #bitrixconf2015
Композит на Битрикс 24 Контент страниц зависит от пользователя Сотни компонентов заточены под многопользовательский режим Любая страница портала может показать авторизацию Большая вариативность контента Партнерская конференция 2015 #bitrixconf2015
Динамическая область Но мы справились Для каждого пользователя создается 2 файла кеша Рабочая область сайта – динамическая область Подсветка левого меню на Javascript При потере авторизации – редирект и сброс кеша Партнерская конференция 2015 #bitrixconf2015
Персонализированный кеш Ключ к обычному кешу Ключ к персонализированному кешу Приватный идентификатор сохраняется в Cookie пользователя Партнерская конференция 2015 #bitrixconf2015
Персонализированный кеш Создаем провайдер кеша Регистрируем в системе Партнерская конференция 2015
Режим Single Page Application Обычный режим: один страница – один кеш SPA режим: много страниц – один кеш Контент вне динамических областей должен быть везде одинаковым Один файл Партнерская конференция 2015
Веб-акселератор с поддержкой композита Партнерская конференция 2015 Портал на AWS Композитный кеш 1 Веб-акселератор Композитный кеш 2 Пользователь
Виртуальная машина 5.1 Партнерская конференция 2015
Новое API для динамических областей Класс FrameStatic – статическая динамическая область Класс FrameBuffered – буферизированная динамическая область Удобно создавать заглушки, но не работает с отложенными функциями По умолчанию используется в шаблонах Deprecated Партнерская конференция 2015
Заголовки X-Bitrix-Composite X-Bitrix-Composite: Cache (200) – отдача страницы из композитного кеша X-Bitrix-Composite: Cache (304) – отдача страницы из композитного кеша (304 ответ) X-Bitrix-Composite: Ajax – ответ композитного аякса X-Bitrix-Composite: Ajax (stable) – кеш не изменился X-Bitrix-Composite: Ajax (changed) – кеш изменился X-Bitrix-Composite: Ajax (error:not_cacheable) – страница не может быть закеширована X-Bitrix-Composite: Ajax (error:redirect) – произошел редирект X-Bitrix-Composite: Ajax (error:not_injected) – композитный js не смог записаться в кеш Партнерская конференция 2015 #bitrixconf2015
Голосование за композит Новое правило: Если компонент находится в динамической области, он всегда голосует «за» Игнорирование голосования произвольной области: Партнерская конференция 2015 #bitrixconf2015
Ресурсы динамической области Проблема: Компонент, находящийся в динамической области, может добавлять в CSS и JS Решение: метод setAssetMode Партнерская конференция 2015
Поддержка HTTPS Партнерская конференция 2015
Обработка ошибок Событие onFrameDataRequestFail возникает, когда аякс-запрос завершился неудачей Партнерская конференция 2015 #bitrixconf2015
Что еще Параметр ncc=1 в URL отменяет композит Исключающие параметры (~EXCLUDE_PARAMS в.config.php) Порты 80 и 443 в настройках доменов теперь игнорируются Партнерская конференция 2015 #bitrixconf2015
Планы Удобный инструмент для отладки Уход от констант и текстовых логов Логирование причин, из-за которых не сработал композит Визуально сравнение версий страниц Партнерская конференция 2015 #bitrixconf2015
Спасибо за внимание Вопросы? Партнерская конференция 2015 #bitrixconf2015