Перейти к основному содержимому

FAQ по миграции в CDN

Продолжит ли CDN работать при недоступности S3 в SPB-1? Как он ведет себя для закэшированных объектов и при cache miss?

Только если заранее включена опция отдачи контента из кэша при ошибках источника (Use Stale): если источник отвечает ошибкой, CDN-серверы будут отдавать последнюю сохраненную в кэш версию контента с заголовком Cache: Stale. Можно выбрать, при каких ошибках отдавать кэш. CDN-серверы продолжат проверять доступность источника с каждым новым запросом и обновят кэш, когда источник восстановится.

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

Поддерживается ли настройка резервного origin в другом регионе с автоматическим переключением при недоступности основного?

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

Как определяется отказ origin, сколько времени занимает переключение и возможны ли сброс кэша или массовые ошибки при восстановлении?

Отказ источника определяется по превышению таймаутов при обращении к источнику контента и числу неудачных попыток соединения. По умолчанию таймаут 10 секунд на каждый этап обращения к источнику, число неудачных попыток — 10. Если источник один, при превышении любого из таймаутов контент не будет доставлен — CDN-сервер вернет 504 Gateway Timeout и при новом запросе снова обратится к источнику.

Скорость переключения на резервный источник зависит от настроенных таймаутов и числа неудачных попыток. Переключение источников не сбрасывает кэш. Чтобы сгладить момент восстановления источника, используйте опцию Use Stale с параметром updating — она позволяет отдавать устаревший закэшированный ответ, пока файлы в кэше обновляются.

Какие компоненты CDN и его управляющей инфраструктуры являются общими для регионов и могут стать единой точкой отказа?

CDN — распределенная сеть кэширующих CDN-серверов с точками присутствия в 30+ городах. Файл кэшируется на том сервере, который получил запрос. Недоступность источника или отдельного региона не влияет на отдачу закэшированного контента из остальных точек сети.

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

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

Почему CDN-ресурс отвечает 403 Forbidden с заголовком X-Reason-Code: 7, хотя источник доступен и отвечает 200?

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

Использование CDN в качестве reverse proxy для динамических запросов к собственному приложению или API без кэширования, а также для VPN не поддерживается. Это нецелевое использование сервиса, которое может привести к ограничению доступа к услуге или блокировке ресурса со стороны вендора.

Очистка кэша может занимать до 15 минут, в это время CDN-ресурс находится в статусе PROCESSING и применение других настроек недоступно. Подробнее в инструкции Очистить кэш.

Почему при создании CDN-ресурса возникает ошибка «403 Forbidden. Недостаточно прав доступа» или ресурс не создается?

Создание CDN-ресурса блокируется, если на балансе недостаточно средств. Пополните баланс на месячную стоимость ресурса (550 ₽ в месяц) и повторите создание ресурса.

Подробнее в подразделе Блокировка CDN-ресурса, если на балансе недостаточно средств инструкции Модель оплаты и цены CDN.

Что делать, если CDN-ресурс больше 30 минут остается в статусе PROCESSING и не переходит в ACTIVE?

Применение настроек CDN-ресурса может занимать от 30 минут до 2 часов. В это время применение других настроек недоступно. Если по истечении этого времени ресурс не активен, создайте тикет. Контент может начать раздаваться еще до смены статуса на ACTIVE.