Наш текущий план для сайта - использовать сервис Amazon Cloudfront в качестве CDN для файлов ресурсов, таких как CSS, JavaScript и изображения, и любых других статических файлов.
В настоящее время в S3 есть 1 корзина, котораясодержит все эти статические файлы.Файлы разделены на разные папки, в зависимости от того, что они из себя представляют, «сценарии» - это файлы JS, «изображения» - изображения и т. Д. Yadda yadda yadda.
Итак, с самого начала я не осознавал, чтопосле развертывания Bucket из S3 в дистрибутив Cloudfront, каждое последующее обновление корзины не будет снова развертываться в том же дистрибутиве.Таким образом, похоже, что вам нужно заново развертывать корзину в другой экземпляр Cloudfront каждый раз, когда вы обновляете статический файл.
Это хорошо для изображений, потому что мы можем легко убедиться, что в случае изменения визображение, тогда мы просто создаем новое изображение.Но это трудно сделать для CSS и JS.
Итак, это подводит меня к вопросам о лучших практиках:
- Лучше ли создавать еще один Cloudfront Distribution для каждого производственного развертывания?Проблема может заключаться в том, что это вызывает проблемы с записями CNAME.
- Рекомендуется ли НЕ хранить CSS и JS в Cloudfront из-за характера этих файлов, и их необходимо легко модифицировать?Похоже, что ответом будет НЕТ, потому что это цель CDN.
- Есть ли какой-нибудь другой метод с Cloudfront, о котором я не знаю?