ДАЙДЖЕСТ

Короткий обзор самых важных новостей, событий, фактов,
подборки актуальных публикаций.

Рассказываем о кэшировании и технологии «Композитный сайт».

Кэширование — это размещение данных в специальном месте для ускоренного доступа к ним в будущем.

Как происходит загрузка страницы: сервер ищет последние записи, генерирует шапку, блоки, подвал страницы, загружает модули и виджеты. Если кэширования нет, то каждый раз посетитель сайта ждет полную загрузку страницы от сервера. Больше запросов к одной странице — больше ресурсов нужно для загрузки. Чем больше посетителей на странице, тем медленнее сервер загружает их для каждого.

Как кэширование помогает решить проблему с нагрузкой: запоминает конечный результат и позволяет пропустить обработку каждого запроса к странице. При первом посещении страницы информация сохраняется в хранилище, чтобы в следующий раз не загружать ее повторно. Благодаря этому сайты открываются быстрее. Это положительно влияет на SEO и формирует позитивное отношение пользователей к ресурсу за счет быстрой загрузки. Время генерации страниц и нагрузка на сервер сокращается, сайт открывается быстро.

Рассмотрим типы кэширования — в браузере и на стороне сервера.

Кэширование в браузере

Кэширование в браузере происходит на стороне пользователя. При первом посещении сайта кэш сохраняется локально. При последующих визитах браузер не тратит время на обращение запроса к серверу: он анализирует, есть ли эти файлы в кэше и подгружает их.

Главный недостаток этого типа в том, что информация хранится только у пользователя. Как только он сбросит кэш или зайдет на страницу с помощью режима Инкогнито, браузер повторно будет обращаться к серверу для генерации страниц.

Кэширование на стороне сервера

В этом типе кэширования данные страниц хранятся на сервере. Пользователь запрашивает страницу сайта: по специальному алгоритму программы собирают страницу из элементов и отправляют браузеру для отображения.

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

Проблему решает серверное кэширование. По нему первый пользователь запрашивает страницу, сервер ее загружает и сохраняет в хранилище. Когда другой пользователь запрашивает эту страницу, сервер не собирает ее заново, а выдает ту, которая сохранилась у него в кэше.

Результат: сокращается работа сервера, ресурсы не используются нерационально, мощности хватает на обработку большего количества запросов одновременно.

Настроить кэширование на сервере можно с помощью memcached. Memcached — способ кэширования данных в оперативной памяти на основе хеш-таблицы.

Такой способ позволяет быстро обрабатывать десятки запросов, необходимых для обработки одной страницы, однако требует много оперативной памяти. Поэтому стоит рассмотреть настройку кэширования на CMS «1С-Битрикс». В документации для администраторов сайта есть несколько вариантов для проекта на 1С-Битрикс.

Способы кэширования на 1С-Битрикс

Кэширование снижает время отклика сайта и увеличивает его устойчивость при нагрузках. Реализуется следующими способами:

  • Автокеширование — все динамические компоненты получают встроенную поддержку управления кэшированием и загружаются без запроса к базе данных.

  • Неуправляемое кеширование — позволяет ограничить время кэширования компонентов. Если время не истекло, то вместо ресурсоемкого кода отдается предварительно созданный файл.

  • Управляемый кеш — автоматически обновляет кэш компонентов при изменении данных.

  • Кеширование меню — кэш обновляется при редактировании меню или изменении прав доступа к файлам и папкам через административный интерфейс и API.

  • HTML кеш — рекомендуется включать на редко обновляемый раздел сайта с регулярным посещением пользователей. Сейчас технология считается устаревшей, вместо нее используют Композитный сайт.

  • Композитный сайт — ускоряет выдачу страниц за счет создания кэша статического контента.

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

Настройка работы композитного сайта на nginx

Композитный сайт — технология, которая увеличивает скорость загрузки сайта на 1С-Битрикс. Статическая информация сайта записывается в кэше и при повторном обращении пользователя быстро отображается.

При включении стандартного автокомпозита 1С-Битрикс отображение страниц сайта осуществляется через уровень PHP. После включения работы композитного сайта на nginx отображение страниц осуществляется на уровне nginx. Алгоритм выглядит как на схеме. С этой настройкой скорость загрузки увеличивается до 10%.

Настройте работу композитного сайта на nginx по инструкции нашего Справочного центра.

Кэширование ускоряет работу сайта для клиентов и снижает нагрузку на хостинг. Особенно полезно его использовать во время привлечения новых пользователей на ресурс.

Если нужна помощь или возникнут вопросы, напишите нам. С радостью поможем. Желаем высоких конверсий вашему проекту!