Cloudfront ставит в очередь параллельные запросы - старший и последовательный время до первого байта (TTFB)
У меня есть веб-приложение, которое запрашивает много медиа-ресурсов параллельно с использованием AJAX. Все активы поступают из одного и того же Cloudfront Origin, который непосредственно подключен к корзине S3.
Я вижу запросы от Cloudfront с TTFB порядка секунд. Еще более странно, что эти запросы в основном помещаются в очередь до тех пор, пока не будет обработан предыдущий запрос:
Эти два запроса инициируются параллельно, и вы можете видеть, что Chrome не ставит их в очередь, а Cloudfront не отвечает на второй (2 КБ) запрос до тех пор, пока первый запрос не завершит загрузку. Это сильно замедляет мое приложение, и я не могу понять, что происходит не так... Я вижу то же поведение, когда проверяю с Safari.
Вот две детали запроса
Как вы можете видеть, они также оба Hit from cloudfront
,
Наконец, как это может быть уместно, я использую лямбда-функцию в поведении моего Происхождения, чтобы добавить правильное Vary
заголовки, чтобы Chrome не использовал кэшированные запросы без заголовков CORS, что приведет к сбою последующего запроса CORS (подробности см. здесь). Вот мои полные настройки поведения Origin:
Любая помощь приветствуется, и, пожалуйста, не стесняйтесь спрашивать более подробную информацию, если это необходимо! Заранее большое спасибо.