#amazon-web-services #amazon-s3 #amazon-cloudfront #latency #continuous-delivery
#amazon-веб-сервисы #amazon-s3 #amazon-cloudfront #задержка #непрерывная доставка
Вопрос:
Я создаю серию веб-сайтов с контентом и создал рабочий кодовый конвейер, который позволяет мне вносить изменения в HTML-файлы на github, которые мгновенно отражаются в корзине S3 и, следовательно, на живом веб-сайте.
Я создал дистрибутив cloudfront, чтобы получить HTTPS для своего веб-сайта. Сертификат и дистрибутив работают нормально, и он заполняется моим index.html в моем сегменте S3, но изменения, внесенные через мой конвейер github в сегмент S3, отражаются в сегменте S3, но не в дистрибутиве CloudFront.
Из того, что я прочитал, пограничные местоположения, используемые в cloudfront, не слишком часто обновляют свои кэши, а когда они это делают, они могут не обновлять отредактированные index.html файл, потому что он имеет то же имя, что и старая версия.
Я не хочу вручную переименовывать свой index.html файл в S3 каждый раз, когда кому-то из моих авторов нужно опубликовать статью о 10 лучших марках тракторов или реализовать экспериментальную идею наживки с минимальными усилиями, так что это в значительной степени исключено.
Моя общая цель — создать нечто, при помощи чего команды могут быстро добавлять на веб-сайт статью с несколькими изображениями, которая будет доступна в считанные минуты, и пока мне это удается, но не с помощью HTTPS.
Если кто-нибудь из вас знает хороший способ мгновенного обновления дистрибутивов CloudFront без изменения имен файлов, это было бы здорово. В противном случае мне, вероятно, придется начинать все сначала, потому что мне нужны защищенные сайты и возможность их мгновенного обновления.
Вы, ребята, потрясающие. Огромное спасибо за любую помощь.
Ответ №1:
Необходимо аннулировать файлы из пограничных кэшей. Это простой и быстрый процесс.
Вы можете автоматизировать процесс самостоятельно в своем конвейере или использовать сторонний инструмент, такой как aws-cloudfront-auto-invalidator.