Обслуживайте статические ресурсы с помощью эффективной политики кэширования (3 метода)

Опубликовано: 2022-04-12

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

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

Оглавление

Что такое кеш?

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

Как на самом деле работает кэширование?

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

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

Преимущества кэширования

Остановимся на некоторых преимуществах кэширования.

Повысьте производительность вашего приложения

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

Нагрузка на серверную часть должна быть снижена

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

Горячие точки в базе данных должны быть устранены

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

Снизить стоимость вашей базы данных

Операций ввода-вывода в секунду (IOPS) может выполнять один экземпляр кэша, что позволяет заменить несколько экземпляров базы данных и значительно снизить затраты. Это очень важно, если первичная база данных взимает плату за объем данных. При определенных условиях может быть большая разница в цене.

Производительность, которую можно предсказать

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

Увеличить количество людей, которые читают (IOPS)

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

Что такое кэширование активов?

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

Что такое кэширование статических ресурсов?

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

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

Читайте также: Как исправить битые постоянные ссылки в WordPress

Что такое эффективная политика кэширования?

Если ваши статические файлы не изменяются (или у вас есть приемлемый механизм очистки кэша), мы предлагаем установить политику кэширования на 6 месяцев или 1 год.

Такие элементы, как глобальные файлы CSS/JS, логотипы, графика и т. д., редко меняются на готовых веб-сайтах, поэтому 6 месяцев или год — это нормальный срок действия кеша для работы.

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

Обслуживайте статические ресурсы с помощью эффективной политики кэширования

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

  1. Использование файла .htaccess, если вы используете LiteSpeed ​​Enterprise или Apache
  2. Использование кеша LiteSpeed
  3. Использование плагина W3 Total Cache

Подавайте статические ресурсы с помощью файла .htaccess на Apache и LiteSpeed ​​Enterprise

Примечание. Если вы используете OpenLiteSpeed ​​или NGINX, этот метод не будет работать.

Войдите в свою панель управления WordPress

Нажмите «Плагины» -> «Добавить новый» в меню слева.

Найдите «Файловый менеджер». Установите и активируйте плагин

Нажмите «Диспетчер файлов» в меню слева.

В папке public_html щелкните правой кнопкой мыши .htaccess и нажмите «Переименовать».

Изменить имя файла (.htaccess-ошибка)

Нажмите на значок «новый файл» сверху

Назовите файл ".htacess"

Вставьте следующий код, сохраните и закройте

 <IfModule mod_expires.c> ExpiresActive On # CSS, JavaScript ExpiresByType text/css "access plus 1 year" ExpiresByType text/javascript "access plus 1 year" ExpiresByType application/javascript "access plus 1 year" # Fonts ExpiresByType font/ttf "access plus 1 year" ExpiresByType font/otf "access plus 1 year" ExpiresByType font/woff "access plus 1 year" ExpiresByType font/woff2 "access plus 1 year" ExpiresByType application/font-woff "access plus 1 year" # Images ExpiresByType image/jpeg "access plus 1 year" ExpiresByType image/gif "access plus 1 year" ExpiresByType image/png "access plus 1 year" ExpiresByType image/webp "access plus 1 year" ExpiresByType image/svg+xml "access plus 1 year" ExpiresByType image/x-icon "access plus 1 year" # Video ExpiresByType video/webm "access plus 1 year" ExpiresByType video/mp4 "access plus 1 year" ExpiresByType video/mpeg "access plus 1 year" # Others ExpiresByType application/pdf "access plus 1 year" ExpiresByType image/vnd.microsoft.icon "access plus 1 year" </IfModule>

Подавайте статические ресурсы с помощью LiteSpeed ​​Cache

Вам необходимо установить и активировать плагин LiteSpeed ​​Cache, после установки следуйте инструкциям ниже:

  • Перейдите в панель управления WordPress.
Обслуживайте статические ресурсы с помощью эффективной политики кэширования
  • Нажмите LiteSpeed ​​Cache -> Кэш в меню слева.
  • Нажмите на вкладку «Браузер» сверху
  • Включите переключатель «Кэш браузера».
  • Нажмите «Сохранить изменения»

Подавайте статические ресурсы с помощью W3 Total Cache

Сначала установите и активируйте плагин W3 Total Cache, а затем следуйте инструкциям ниже.

  • Перейдите в панель управления WordPress.
  • Нажмите «Производительность» -> «Кэш браузера» в меню слева.
  • Прокрутите вниз до «Медиа и другие файлы». Измените «Срок жизни заголовка истекает» как минимум на 15552000 с (180 дней).
  • Нажмите «Сохранить все настройки»

Вывод

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