Drim Dev
Первым делом мы должны создать аккаунт в Cloudflare и перенести домен shokan.blog с GoDaddy на Cloudflare. Опустим детали, как это делается, но в итоге на DNS запросы будет отвечать Cloudflare. И вместо того, чтобы для домена shokan.blog отдавать IP адрес…
Cloudflare CDN
Всем привет! В прошлый раз мы говорили об Anycast и о том, как Cloudflare направляет трафик на ближайший к пользователю дата-центр. В том посте мы вкратце затронули, что Cloudflare может сохранять (кешировать) файлы вашего сайта, чтобы не беспокоить постоянно ваш основной сервер.
Эта технология называется Content Delivery Network (CDN). И это одна из ключевых функций, которая становится доступна благодаря тому, что весь трафик идёт через Cloudflare. Логика простая: когда дата-центр Cloudflare получает запрос на файл с вашего сайта (картинку, скрипт, видео), он сначала проверяет, нет ли у него в кеше свежей копии этого файла.
* Если копия есть (Cache Hit), он мгновенно отдаёт её пользователю. Ваш сервер в этот момент даже не узнает, что был какой-то запрос.
* Если копии нет (Cache Miss), Cloudflare обращается к вашему серверу, забирает файл, сохраняет его в свой кеш для будущих запросов и отдаёт пользователю.
Чтобы не быть голословным, я прикрепляю скриншот из панели управления одного из моих реальных проектов. Цифры говорят сами за себя. За последние 24 часа было обработано 538.13 миллиона запросов. Из них 526.68 миллиона были отданы напрямую из кеша Cloudflare. До моего сервера дошло всего 11.46 миллиона запросов.
Простая математика показывает, что почти 98% всех запросов были обработаны из кеша! Это значит, что CDN снизил нагрузку на мой сервер почти в 47 раз. Это колоссальная экономия ресурсов и надёжная защита от сбоев при любом наплыве посетителей.
И, что очень важно, CDN доступен на бесплатном тарифе Cloudflare!
Как включить и настроить CDN?
Хорошая новость в том, что базовое кеширование включается автоматически, как только вы переносите свой домен на Cloudflare. Он по умолчанию начинает кешировать статические файлы.
Для более тонкой настройки нужно зайти в панель управления Cloudflare, выбрать ваш домен и перейти в раздел Caching > Configuration.
Здесь можно настроить несколько ключевых вещей:
* Caching Level. Уровень кеширования. Он определяет, какие данные нужно кешировать.
* Browser Cache TTL. Как долго браузер пользователя должен хранить у себя копию файлов. Это уже кеширование на стороне клиента.
Для большинства сайтов стандартных настроек более чем достаточно. Если же вам нужны более сложные правила (например, кешировать определённые страницы, но не кешировать другие), можно использовать Cache Rules.
Что кешируется, а что нет?
По умолчанию кешируются: статические ресурсы. Это файлы, которые не меняются от пользователя к пользователю.
* CSS, JavaScript файлы
* Изображения (JPG, PNG, GIF, SVG)
* Шрифты (WOFF, TTF)
* Документы (PDF)
По умолчанию НЕ кешируются: динамические запросы. Это контент, который генерируется персонально для пользователя или изменяет данные на сервере, например:
* API-запросы. Например, когда вы отправляете комментарий или ставите лайк, этот запрос (
* Ответы для залогиненных пользователей. Страница профиля
Благодаря такому разделению, ваш сайт остаётся интерактивным и персональным, но при этом вся статическая его часть загружается молниеносно и не создаёт нагрузки на сервер.
Но как Cloudflare, браузер и сервер договариваются между собой о том, что и на какое время можно кешировать? Для этого в вебе существует специальный стандартный механизм, который управляет всем процессом с помощью HTTP-заголовков (например,
Этот механизм и другие тонкости кеширования мы подробно разберём в следующем посте. А пока рекомендую ознакомиться с официальной документацией Cloudflare Cache/CDN.
Подписывайтесь на канал, будет полезно и интересно 🚀 @drim_channel
#cloudflare #cdn #cache
Всем привет! В прошлый раз мы говорили об Anycast и о том, как Cloudflare направляет трафик на ближайший к пользователю дата-центр. В том посте мы вкратце затронули, что Cloudflare может сохранять (кешировать) файлы вашего сайта, чтобы не беспокоить постоянно ваш основной сервер.
Эта технология называется Content Delivery Network (CDN). И это одна из ключевых функций, которая становится доступна благодаря тому, что весь трафик идёт через Cloudflare. Логика простая: когда дата-центр Cloudflare получает запрос на файл с вашего сайта (картинку, скрипт, видео), он сначала проверяет, нет ли у него в кеше свежей копии этого файла.
* Если копия есть (Cache Hit), он мгновенно отдаёт её пользователю. Ваш сервер в этот момент даже не узнает, что был какой-то запрос.
* Если копии нет (Cache Miss), Cloudflare обращается к вашему серверу, забирает файл, сохраняет его в свой кеш для будущих запросов и отдаёт пользователю.
Чтобы не быть голословным, я прикрепляю скриншот из панели управления одного из моих реальных проектов. Цифры говорят сами за себя. За последние 24 часа было обработано 538.13 миллиона запросов. Из них 526.68 миллиона были отданы напрямую из кеша Cloudflare. До моего сервера дошло всего 11.46 миллиона запросов.
Простая математика показывает, что почти 98% всех запросов были обработаны из кеша! Это значит, что CDN снизил нагрузку на мой сервер почти в 47 раз. Это колоссальная экономия ресурсов и надёжная защита от сбоев при любом наплыве посетителей.
И, что очень важно, CDN доступен на бесплатном тарифе Cloudflare!
Как включить и настроить CDN?
Хорошая новость в том, что базовое кеширование включается автоматически, как только вы переносите свой домен на Cloudflare. Он по умолчанию начинает кешировать статические файлы.
Для более тонкой настройки нужно зайти в панель управления Cloudflare, выбрать ваш домен и перейти в раздел Caching > Configuration.
Здесь можно настроить несколько ключевых вещей:
* Caching Level. Уровень кеширования. Он определяет, какие данные нужно кешировать.
* Browser Cache TTL. Как долго браузер пользователя должен хранить у себя копию файлов. Это уже кеширование на стороне клиента.
Для большинства сайтов стандартных настроек более чем достаточно. Если же вам нужны более сложные правила (например, кешировать определённые страницы, но не кешировать другие), можно использовать Cache Rules.
Что кешируется, а что нет?
По умолчанию кешируются: статические ресурсы. Это файлы, которые не меняются от пользователя к пользователю.
* CSS, JavaScript файлы
* Изображения (JPG, PNG, GIF, SVG)
* Шрифты (WOFF, TTF)
* Документы (PDF)
По умолчанию НЕ кешируются: динамические запросы. Это контент, который генерируется персонально для пользователя или изменяет данные на сервере, например:
* API-запросы. Например, когда вы отправляете комментарий или ставите лайк, этот запрос (
POST /api/comments) должен дойти до сервера, чтобы он сохранил данные в базу. Кешировать его нельзя.* Ответы для залогиненных пользователей. Страница профиля
/profile у каждого пользователя своя, и её нельзя показывать всем из кеша.Благодаря такому разделению, ваш сайт остаётся интерактивным и персональным, но при этом вся статическая его часть загружается молниеносно и не создаёт нагрузки на сервер.
Но как Cloudflare, браузер и сервер договариваются между собой о том, что и на какое время можно кешировать? Для этого в вебе существует специальный стандартный механизм, который управляет всем процессом с помощью HTTP-заголовков (например,
Cache-Control, Expires, ETag). Именно через них наш сервер может дать точные инструкции любому кеширующему прокси или браузеру.Этот механизм и другие тонкости кеширования мы подробно разберём в следующем посте. А пока рекомендую ознакомиться с официальной документацией Cloudflare Cache/CDN.
Подписывайтесь на канал, будет полезно и интересно 🚀 @drim_channel
#cloudflare #cdn #cache
👍6🔥3