Что такое CDN и как он работает
Content Delivery Network (CDN) — это географически распределенная сеть серверов, которая доставляет контент пользователям с ближайшего к ним сервера.
Принцип работы CDN
Без CDN
Один сервер обслуживает всех
Большие расстояния
Высокая нагрузка
Медленная загрузка
С CDN
Множество серверов по всему миру
Близость к пользователям
Распределенная нагрузка
Быстрая доставка контента
Сравнение популярных CDN провайдеров
Провайдер | Серверов | Стран | Производительность | Цена |
---|---|---|---|---|
Cloudflare | 320+ | 120+ | ⭐⭐⭐⭐⭐ | Бесплатно |
AWS CloudFront | 450+ | 90+ | ⭐⭐⭐⭐⭐ | $0.085/GB |
KeyCDN | 45+ | 40+ | ⭐⭐⭐⭐ | $0.04/GB |
BunnyCDN | 116+ | 60+ | ⭐⭐⭐⭐⭐ | $0.01/GB |
Подберите CDN под ваши потребности
Рекомендация:
AWS CloudFront - максимальная производительность и глобальное покрытие
Оптимальная настройка кэширования
Статические ресурсы
Типы файлов:
- Изображения (JPG, PNG, WebP, SVG)
- CSS и JavaScript файлы
- Веб-шрифты (WOFF, WOFF2)
- Видео и аудио файлы
Время кэширования:
Изображения:1 год
CSS/JS с версионированием:1 год
Шрифты:1 год
Видео:6 месяцев
Динамический контент
Примеры:
- • HTML страницы
- • API ответы
- • Часто обновляемый контент
- • Персонализированные данные
Стратегии кэширования:
HTML страницы:5-15 мин
API ответы:1-60 мин
Новости/блог:1-24 часа
Пример .htaccess конфигурации
# Статические ресурсы - 1 год <FilesMatch "\.(jpg|jpeg|png|gif|webp|svg|css|js|woff|woff2)$">
Header set Cache-Control "max-age=31536000, public"
</FilesMatch>
# HTML страницы - 5 минут <FilesMatch "\.(html|htm)$">
Header set Cache-Control "max-age=300, public"
</FilesMatch>
# API и динамический контент <FilesMatch "\.(json|xml)$">
Header set Cache-Control "max-age=3600, public"
</FilesMatch>
Мониторинг производительности CDN
Real User Monitoring
Отслеживание реальной производительности
- • Время загрузки
- • Процент попаданий в кэш
- • География пользователей
Synthetic Monitoring
Автоматическое тестирование
- • Проверка доступности
- • Измерение задержек
- • Алерты при проблемах
Analytics
Анализ использования
- • Объемы трафика
- • Популярные ресурсы
- • Стоимость и ROI
Ключевые метрики для отслеживания
Производительность
- • Cache Hit Ratio (> 95%)
- • Origin Shield Hit Ratio (> 90%)
- • Average Response Time (< 50ms)
- • Bandwidth Savings (> 80%)
Надежность
- • Uptime (> 99.9%)
- • Error Rate (< 0.1%)
- • TTFB (< 100ms)
- • Regional Performance
Лучшие практики и оптимизация
✅ Рекомендации
- • Включить HTTP/2 и HTTP/3
- • Использовать Brotli сжатие
- • Настроить правильные заголовки
- • Включить минификацию
- • Использовать современные форматы изображений
- • Настроить предварительную загрузку
- • Мониторить Core Web Vitals
❌ Распространенные ошибки
- • Кэширование динамического контента
- • Слишком длительное кэширование HTML
- • Игнорирование заголовков Vary
- • Неправильная настройка SSL
- • Отсутствие мониторинга
- • Неоптимальная конфигурация TTL
- • Игнорирование региональных различий