Технология «композитного сайта» в ряде случаев способна в значительной мере снизить время отклика тяжёлых сайтов созданных на базе CMS семейства Битрикс.
Технология «композитного сайта» в ряде случаев способна в значительной мере снизить время отклика тяжёлых сайтов созданных на базе CMS семейства Битрикс. На время отклика влияет целый комплекс различных факторов, таких как: конфигурация ОС, TCP/IP-стека, производительность ОЗУ, дисковой подсистемы, используемой СУБД, самой CMS 1C-Битрикс, географическое расположение сервера, использование современных протоколов передачи данных (HTTP/2), криптографических алгоритмов (SSL/TLS) и многое другое. Использование композитной технологии не является «серебрянной пулей» способной отменить их влияние. Однако, она позволяет нивелировать время отклика страниц сайта сделав его более усреднённым.
Предположим, мы имеем заглавную страницу сайта с использованием десятка компонентов типа lists, news, form, search и др. И страницу «Контакты» на которой кроме адреса компании ничего более нет. Очевидно, что время отклика этих страниц будет различаться в разы. Будет затрачено время на множественные обращения к API и СУБД, а они являются наиболее прожорливыми по отношению к ресурсам и выполняются web-сервером индивидуально (в данном случае) для каждого посетителя нашего сайта.
Композитная технология позволяет отдавать посетителю предварительно сформированные HTML-страницы. Это снижает нагрузку на web-сервер т.к. его ресурсы на интерпретацию PHP-кода, обращения к API и СУБД будут затрачены однократно, при формировании страницы.
HTML-страницы формируются для каждой страницы сайта и каждого домена на web-сервере (например, www.domain.tld и domain.tld – разные домены) и представляют собой «каркас» содержащий только статический контент. Области динамического контента должны быть заранее заданы в шаблоне сайта и обновляются AJAX-скриптом после того как web-сервер страницу уже отдал. Со стороны пользователя это выглядит как открытие всей страницы сайта сразу, с последующей дозагрузкой некоторых её частей (например, баннеров, карточек товаров, списков и т.д.). Во время загрузки динамического контента на странице пользователю можно показывать анимацию или вывести надпись «Пожалуйста, ожидайте», «Идёт загрузка» и т.п.
Композитный сайт выигрывает за счёт повышения отзывчивости и ориентированности на клиента, пропорционально увеличивая время пребывания посетителей на сайте. Но в ней имеются и свои «камни преткновения». Типичной является ситуация когда композитную технологию пытаются включать без адаптации шаблона. В этом случае при выполнении посетителем действий на странице, никаких изменений происходить не будет, а посетитель будет получать ранее зафиксированную страницу.
Композитную технологию не стоит путать и с простым кэшированием, поскольку помимо этапа кэширования, существует этап формирования страницы в котором задействовано API Битрикс. Сама же идея предварительной подготовки данных предоставляемых пользователю известна программистам с середины прошлого века.

Композитная технология стала доступной массовому пользователю начиная с Битрикс версии 14.5 появившейся в 2014 г, но и сегодня количество композитных сайтов в рунете невелико. Сухой и консервативный стиль официальной документации, её неполнота и разрозненность, использование собственной терминологии вызвали взрывной рост статей на тему внедрения, но увеличения числа сайтов использующих композит не произошло.
Рассмотрим некоторые типовые проблемы.
Удобней всего это проверять в Google Chrome. Для этого потребуется установка двух лёгких расширений: Bitrix Composite Notifier и Page load time. Первое показывает этап работы композитного режима и возвращаемые web-сервером заголовки характерные для Битрикс, второе - реальное время отклика в браузере. Заголовки целиком удобно читать вызывом:
wget --server-response -O /dev/null
Для второго хита будет характерно появление заголовка X-Bitrix-Composite
Композит не создаёт страницы бесконечно, но многообразие страниц сайта кэшируемых вместе с передаваемыми им параметрами поистине безгранично. Вы можете сохранять на диск страницы без параметров установкой соответствующей галки в «Настройки продукта > Композитный сайт > Настройки». Но более разумным будет перечислить неиспользуемые параметры в «Игнорировать следующие параметры URL». Например, это могут быть параметры личного кабинета.
0 */11 * * * bitrix php -f /home/bitrix/<домен>/bitrix/modules/main/tools/cron_html_pages.php 10 >/dev/null 2>&1

Среда BX-Env 5.1.9 не поддерживает работу в CentOS 7, но если нет необходимости в предоставляемых ей скриптах поддержки и пакетах (ansible, nrpe, munin, sphinx, etckeeper, msmtp, sar и др.), то нижеприведённые рекомендации позволят настроить (по аналогии) производительный композитный web-сервер и на CentOS 7.1.
Без среды BX-Env, в числе прочего, мы лишаемся скриптовой поддержки Веб-кластера Битрикс, однако считаем это незначительной потерей. В общем случае рекомендуем использовать хорошо документированный и совместимый с BX-Env дистрибутив CentOS 6.8