Узнайте, как кэширование влияет на EPMV

Узнайте, как кэширование влияет на EPMV


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

Виды кэширования

1. Браузерное кэширование или клиентское кэширование

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

1.1. Кэширование файлов и картинок.

Браузерное кэширование как нельзя лучше подходит для сайтов, содержащих большое количество изображений: картинка не скачивается каждый раз при открытии сайта, а просто загружается через кэш браузера. Это первый уровень кэширования, который состоит в отдаче заголовка «expired» и заголовка «304 Not Modified». Наиболее эффективным считается кэширование на две недели.

Однако в данном случае есть один важный нюанс: если изображение на сайте меняется, то браузер узнаёт об этом не сразу, а только если выждать expiry или сбросить кэш в самом браузере. Это не очень эффективно, если файл постоянно меняется и необходимо постоянно отдавать его актуальную версию.

1.2. Кэширование https

Специальные заголовки вида strict-security. Позволяет браузеру всегда обращаться по https к выбранному домену. Сохраняет это состояние довольно жёстко и, в случае отмены этого вида кэша, браузер ещё довольно долго будет пытаться загрузить страницу по https, при этом игнорируя текущие заголовки.

1.3. Кэширование центра сертификации

Так называемый stamp центра сертификации.

Данный вид кэширования считается обязательным, если владелец веб-сайта не хочет, чтобы пользователи его сайта ждали, когда центр сертификации (а это некий сервер, который отвечает за достоверность сертификата) обработает запрос от браузера пользователя и подтвердит, что ресурс действительно подтверждён им.

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

Когда страница уже сгенерирована, нужно постоянно отслеживать её актуальность. Для этого нужно использовать серверный кэш с отслеживанием времени изменения отдельных частей страницы (если страница строится из множества динамически генерируемых блоков). При таком подходе в каждом ответе от сервера установлены специальные заголовки, обозначающие время изменения страницы, которые затем отправляются браузером пользователя при повторном обращении к странице сайта. Сервер при получении таких заголовков можно проанализировать текущее состояние страницы (возможно, даже отрисовать её), но вместо содержимого страницы отдать заголовок «304 Not Modified», что для пользовательского браузера будет означать, что можно показать страницу из своего (браузера пользователя) кэша.

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

Как правило, кэш подразделяется по типу пользователей:

  • для авторизованных;
  • для неавторизованных.

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

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

2 Серверное кэширование

Под серверным кэшированием понимаются все виды кэширования, при котором данные хранятся на серверной стороне. Эти данные не доступны клиентским браузерам. Кэш создаётся и хранится по принципу «один ко многим» (многие, в данном случае, — это клиентские устройства).

2.1. Кэширование страницы целиком

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

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

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

Кэширование страниц целиком, чаще всего, применяют в каких-то экстренных случаях, при этом кэш страниц сохраняется на заранее указанное время (от 2 минут), в течение которого ответы от сервера однотипны.

2.2. Кэширование результатов компиляции php-файлов

Различают как чистую компиляцию кода, так и его оптимизацию во время компилирования (подмена скриптов).

2.3. Кэширование отдельных блоков страницы

Это самый интересный, и в то же время самый сложный вид кэширования. Тем не менее и он может быть эффективным, на его примере проще всего объяснить принципы кэширования в целом.

Необходимо отслеживать: состояние таблиц, состояние сессии пользователя, выключать ли кэширование при POST или GET запросах, зависимость от текущего адреса, постоянство кэширования (при изменении предыдущих условий) или его динамическую подстройку.

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

2.4. Кэширование php на основе неразделяемых ресурсов

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

2.5. Кэширование php на основе общих ресурсов

Такое кэширование применяется для хранения сериализированных данных. Например, конфигурационного файла, состояния таблиц, списков файловой системы.

2.6. Кэширование mysql на основе query cache

Это довольно известная и освещённая тема. Тем не менее, хотелось бы рассмотреть специфику работы с timestamp и то, как можно избежать постоянного сброса query cache.

WHERE show_ts<=UNIX_TIMESTAMP()

Если использовать постоянно меняющийся timestamp в таких запросах, то sql кэш будет не только бесполезен, но даже вреден, так как будет копиться большинство кэшированных запросов, данные которых устарели в момент создания кэша.

Как правило, любой материал публикуется в определённые моменты времени. К примеру, 00:00. Всё что нужно сделать — создать запрос, который будет оценивать таблицу по максимальной дате, при этом, меньшей текущей.

SELECT SQL_NO_CACHE VAX (show_ts) WHERE show_ts <= UNIX_TIMESTAMP ();

Этот запрос кэшироваться не будет, но будут кэшироваться все запросы к этой таблице, если их количество больше одного.

2.7. Кэширование mysql результатов работы, агрегирующие таблицы

Существует правило: обновлений данных должно быть значительно меньше, чем чтения для их отдачи.

Кеширование DNS: наиболее эффективное кеширование веб-сайтов

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

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

Аналитика и статистика больших данных путем кеширования страниц

То есть не имеет смысла агрегировать то, что изменится в тот же момент, при этом важна актуальность агрегированных данных.

Что выбирать для агрегирования? Обычно это какая-то статистическая информация о числе записей, дате последнего обновления, авторе последнего обновления и тому подобное.

Для того, чтобы узнать, как кэширование влияет на EPMV, владелец веб-сайта должен выполнить следующие действия:

  1. Выполнить вход в личный кабинет Ezoic;
  2. В левом боковом меню выбрать настройку «Скорость сайта»;
  3. В выпадающем меню нажать на опцию «Кэширование».

Пользователь попадает на страницу, на которой отображаются аналитические данные. Одна часть данных отображена в виде графика, а вторая — в виде таблицы, в которой аналитические данные расписаны более подробно.

Обзор данных графика и таблицы

Сразу стоит отметить, что данные, которые будут приведены в данной статье, действительны только для одного конкретного сайта. Если вы являетесь владельцем собственного веб-сайта, и вам тоже нужно получить доступ к такой аналитике, то необходимо пройти регистрацию в системе Ezoic.

Основная функция кэша - ускорить процесс поиска данных. Это устраняет необходимость доступа к более медленному базовому уровню хранения. Небольшое количество памяти кеша компенсируется высокой скоростью доступа.

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

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

  1. Уровень кэша Ezoic;
  2. Просмотр страниц;
  3. Среднее время загрузки страницы;
  4. Уровень вовлечённости страниц;
  5. Среднее время до первого байта;
  6. Среднее время взаимодействия;
  7. Среднее время отклика хоста;
  8. Показатель отказа;
  9. Процент выхода;
  10. RPM.

Попадание в кэш.

Попадание в кэш — это первый уровень кэша в Ezoic. Рассмотрим подробнее. Просмотр страниц — 2,002,169, от общего количества просмотров это составляет 69.96%. Среднее время загрузки страницы для данного уровня кэша составило 00:36, тогда как среднее значение по данному показателю равно 00:38. Уровень вовлечённости страниц 49.02%, среднее значение для этого критерия составляет 50.52 процента. Среднее время до первого байта — 1,470.92 мс, общий показатель равен 1,906.62 мс.

Среднее время взаимодействия для данного уровня кэша равно 2,469.89 мс, тогда как общий показатель равен 2,959.37 мс. Среднее время отклика хоста — 20.70 мс, общий показатель 262.14 мс. Показатель отказов равен 28.96%, общий процент отказов равен 28.47%. Процент выхода равен 84.73%, общий процент составил 84.52%.

RPM для данного уровня кэша равен $5.32, общий показатель для всех уровней кэша составляет $5.29.

Не попадание в кэш.

Не попадание в кэш — это второй уровень кэширования в Ezoic. Рассмотрим подробнее. Просмотр страниц 727,702, от общего количества просмотров это составляет 24.43%. Среднее время загрузки страницы для данного уровня кэша составило 00:41, тогда как среднее значение по данному показателю равно 00:38. Уровень вовлечённости страниц 54.52%, среднее значение для этого критерия составляет 50.52 процента. Среднее время до первого байта — 2,558.18 мс, общий показатель равен 1,906.62 мс.

Среднее время взаимодействия для данного уровня кэша равно 3,677.07 мс, тогда как общий показатель равен 2,959.37 мс. Среднее время отклика хоста — 415.68 мс, общий показатель 262.14 мс. Показатель отказов равен 26.98%, общий процент равен 28.47%. Процент выхода равен 83.99%, общий процент составил 84.52%.

RPM для данного уровня кэша равен $5.23, общий показатель для всех уровней кэша составляет $5.29.

Кэш выключен.

Кэш выключен — это третий уровень кэширования в Ezoic. Рассмотрим подробнее. Просмотр страниц 132,113, от общего количества просмотров это составляет 4.62%. Среднее время загрузки страницы для данного уровня кэша составило 00:36, тогда как среднее значение по данному показателю равно 00:38. Уровень вовлечённости страниц 51.20%, среднее значение для этого критерия составляет 50.52 процента. Среднее время до первого байта — 4,695.58 мс, общий показатель равен 1,906.62 мс.

Среднее время взаимодействия для данного уровня кэша равно 6,169.49 мс, тогда как общий показатель равен 2,959.47 мс. Среднее время отклика хоста — 3,075.51 мс, общий средний показатель равен 262.14 мс. Показатель отказов равен 29.55%, общий процент равен 28.47%. Процент выхода равен 84.70%, общий процент составил 84.52%.

RPM для данного уровня кэша равен $5.17, общий показатель для всех уровней кэша составляет $5.29.

Аналитика больших данных от Ezoic

Аналитика больших данных от Ezoic — относительно молодой продукт на рынке аналогичных услуг от данной компании. Нельзя не отметить то, что он пользуется хорошей популярностью у владельцев веб-сайтов, и тому есть несколько причин.

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

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

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

Часто Задаваемые Вопросы

Каковы преимущества кэширования для веб -сайта?
Основным преимуществом кэширования для сайта является возможность не воссоздать страницу для каждого пользователя. Это даст вам возможность работать с большим количеством данных в кратчайшие сроки и с ограниченными ресурсами.
Что означает кэширование сайта?
Кэширование (или кэш) является своего рода промежуточным буфером, в котором хранятся данные. Благодаря кэшированию, страница сайта не воссоздана для каждого пользователя. Кэширование позволяет вам работать с большим количеством данных в кратчайшие сроки и с ограниченными ресурсами (сервер и пользователь).
Каковы отношения между кэшированием веб -сайта и EPMV, и как издатели могут узнать об этом влиянии?
Кэширование может положительно повлиять на EPMV, ускоряя время загрузки страниц и улучшив пользовательский опыт, что может привести к увеличению вовлечения рекламы и доходов. Издатели могут анализировать EPMV до и после реализации решений кэширования, чтобы понять его влияние.




Комментарии (0)

Оставить комментарий