← Cloudflare Pages / pages / functions
Smart Placement
По умолчанию Workers и Pages Functions выполняются в дата-центре, ближайшем к месту получения запроса. Если вы выполняете серверную логику в Pages Function, может оказаться эффективнее размещать эту Pages Function ближе к вашей серверной инфраструктуре, а не к конечному пользователю. Smart Placement (в бета-версии) автоматически размещает рабочие нагрузки в оптимальном месте, что минимизирует задержку и ускоряет работу приложений.
Контекст
Smart Placement применяется к Pages Functions и middleware. Обычно ресурсы всегда доставляются глобально, из точки, ближайшей к вашим пользователям.
У Smart Placement в Pages сейчас есть ряд ограничений. Хотя ресурсы всегда должны предоставляться из точки, ближайшей к пользователю, из этого правила есть два исключения:
-
При использовании middleware для каждого запроса (
functions/_middleware.js) при включённом Smart Placement все ресурсы будут обслуживаться из местоположения, ближайшего к вашей серверной инфраструктуре. Это может привести к неожиданному увеличению задержки. -
При использовании
env.ASSETS.fetch↗, ресурсы, обслуживаемые черезASSETSfetcher из вашей Pages Function обрабатываются в том же дата-центре, что и сама Function. Это может быть дата-центр, ближайший к вашей серверной инфраструктуре, а не к пользователю.
Включить Smart Placement (бета)
Smart Placement доступен на всех тарифных планах.
Включить Smart Placement через панель управления
Чтобы включить Smart Placement через dashboard:
-
На панели управления Cloudflare перейдите к разделу Workers & Pages страницу.
Перейдите в Workers & Pages ↗ -
Выберите свой проект Pages.
-
Выберите Настройки > Runtime.
-
В разделе Placement, выберите Smart.
-
Отправьте на Pages Functions немного начального трафика (примерно 20-30 запросов). После отправки трафика на Pages Function пройдёт несколько минут, прежде чем Smart Placement начнёт действовать.
-
У вашей функции Pages можно просмотреть метрики длительности запроса в разделе Functions Metrics.
Оставить отзыв о Smart Placement
Smart Placement находится на этапе бета-тестирования. Чтобы поделиться своими впечатлениями об использовании Smart Placement, присоединяйтесь к Cloudflare Developer Discord ↗.