Существуют ли варианты использования, которые лучше подходят для облачного фронта Amazon по сравнению с s3 или наоборот? Я пытаюсь понять разницу между двумя примерами.
Существуют ли варианты использования, которые лучше подходят для облачного фронта Amazon по сравнению с s3 или наоборот? Я пытаюсь понять разницу между двумя примерами.
Ответы:
Amazon S3 предназначен для крупногабаритного недорогого хранилища файлов в одном конкретном географическом регионе. * Затраты на хранение и пропускную способность довольно низкие.
Amazon CloudFront - это сеть доставки контента (CDN), которая проксирует и кэширует веб-данные в крайних местах, максимально приближенных к пользователям.
Когда конечные пользователи запрашивают объект, используя это доменное имя, они автоматически направляются в ближайший крайний пункт для высокопроизводительной доставки вашего контента. ( Амазонка )
Данные, обслуживаемые CloudFront, могут поступать или не поступать с S3. Поскольку он более оптимизирован для скорости доставки, пропускная способность стоит немного дороже.
Если ваша пользовательская база локализована , вы не увидите большой разницы в работе с S3 или CloudFront (но вам нужно выбрать правильное местоположение для вашего сегмента S3: США, ЕС, APAC). Если ваша база пользователей распространяется по всему миру и скорость важна, CloudFront может быть лучшим вариантом.
Оба S3 и CloudFront позволяют псевдонимы доменов, однако CloudFront позволяет несколько псевдонимов , так что d1.mystatics.com
, d2.mystatics.com
и d3.mystatics.com
может все это указывает на то же место увеличение пропускной способности для параллельных загрузок (это используется , чтобы быть рекомендованы Google , но с введением SPDY и HTTP / 2 имеет меньшее значение).
CloudFront также поддерживает CORS с 2014 года (благодаря sergiopantoja).
* Примечание: S3 теперь может автоматически реплицироваться в дополнительные регионы с 2015 года.
CloudFront и S3 Bucket - это не одно и то же . С точки зрения непрофессионала: CloudFront позволяет вам ускорить доставку контента вашего веб-контента через сеть доставки контента (CDN) в периферийные местоположения, тогда как S3 Buckets - это место, где вы храните ваши фактические файлы. Источники CloudFront не обязательно должны быть из S3, но для упрощения визуализации интеграции S3 с CloudFront:
Еще одно важное отличие состоит в том, что CloudFront позволяет зеркалировать сайт на вашем сервере. Cloudfront затем кэширует файлы, такие как изображения, mp3 или видео, используя свою сеть доставки контента.
Это избавит вас от необходимости дублировать свои активы, как при использовании Amazon S3.
Однако после истечения срока действия файла CloudFront снова получит его с вашего действующего сайта (по цене). Таким образом, облачный фронт лучше всего подходит для часто используемых файлов, а для нечасто доступных - меньше.
Один из способов установить срок действия файла для apache - это .htaccess. Например
<filesMatch "\\.(mp3|mp4)$">
Header set Cache-Control "max-age=648000, private"
</filesMatch>
Amazon CLOUDFRONT и S3 - это две разные услуги, предоставляемые Amazon Web Services.
Amazon S3 - это сервис хранения, в котором мы можем хранить статические файлы, такие как:
CSS, изображения, JavaScript, видео и т. д ...
Amazon CloudFront - это промежуточное ПО, которое находится между пользователем, запрашивающим файл у AWS, и центром обработки данных S3 в определенном регионе. CloudFront используется для ускорения распространения статического и динамического веб-контента из S3 пользователю.
Вы можете понять это лучше на примере:
Например, ваш S3 находится в регионе AWS США Восток (Северная Вирджиния), где расположен центр обработки данных для хранения ваших файлов.
Если пользователь из Индии попытается получить доступ к файлу с сервера AWS в Вирджинии, ему потребуется запросить это конкретное место, и это займет много времени.
Что делает CloudFront, так это то, что он является промежуточным ПО между пользователем и AWS S3.
Наиболее часто используемые файлы могут кэшироваться в CloudFront, и он выполняет репликацию этих файлов в периферийных местоположениях (для доставки контента конечным пользователям с более низкой задержкой Amazon CloudFront использует глобальную сеть периферийных местоположений для доставки контента).
Если контент уже находится в крайнем местоположении с минимальной задержкой, CloudFront доставляет его немедленно. Если содержимое в данный момент находится не в этом пограничном местоположении, CloudFront извлекает его из корзины Amazon S3 и предоставляет пользователю как можно быстрее.
Каждый запрос получает новый DNS от CloudFront к S3, так что это приведет к снижению трафика и параллельной обработке запросов.
Ниже приведен список текущих краевых местоположений по состоянию на июль-2016:
Соединенные Штаты
Европа
Амстердам, Нидерланды (2)
Дублин, Ирландия
Франкфурт, Германия (3)
Лондон, Англия (3)
Мадрид, Испания
Марсель, Франция
Милан, Италия
Париж, Франция (2)
Стокгольм, Швеция
Варшава, Польша
Азия
Ченнаи, Индия
Гонконг (2)
Мумбаи, Индия
Манила, Филиппины
Нью-Дели, Индия
Осака, Япония
Сеул, Корея (3)
Сингапур (2)
Тайбэй, Тайвань
Токио, Япония (2)
Австралия
Мельбурн, Австралия
Сидней, Австралия
Южная Америка
Сан-Паулу, Бразилия
Рио-де-Жанейро, Бразилия
Из этого вы можете сделать вывод, что если пользователи ограничены из того же региона, в котором находится ваш S3, вам не нужно переходить на CloudFront, а если количество пользователей увеличивается на глобальном уровне, то вам обязательно следует использовать CloudFront для лучшей задержки и контроля трафика.
Amazon S3 - это простая служба хранения, в которой может использоваться большое количество информации, например, видео, изображения, PDF и т. Д.
CloudFront - это сеть доставки контента, которая ближе к конечному пользователю и используется для того, чтобы сделать информацию доступной на Amazon S3 в кратчайшие сроки.
Пример использования: видео по запросу.
Некоторые преимущества использования CloudFront для правильного варианта использования:
Другие возможные варианты использования:
Здесь пропущен один аспект:
Amazon Cloudfront также предлагает более низкие цены, чем Amazon S3 на более высоких уровнях использования.
Cloudfront CDN предназначен для распределения контента между несколькими серверами, географически распределенными (CSS, JS)
Принимая во внимание, что s3 - это больше хранилища ресурсов для каждого пользователя (пользовательские изображения, PDF-файлы).
Вы можете обслуживать ресурсы Cloudfront из корзины s3, полностью минуя ваш веб-сервер.
( Полезно в ситуациях, когда ваш веб-сервер предварительно компилирует и сохраняет изображения и java-скрипт. Хранение их на s3 означает, что объем памяти вашего сервера сокращается )
Пример: на Heroku Slugs (с помощью s3 можно уменьшить размеры согласованного приложения, а обертывание его с CDN на стороне облака увеличит пропускную способность)
Сначала я хотел бы объяснить, что Amazon S3 - это облачное хранилище, а Cloud Front - сеть доставки контента (CDN).
Таким образом, вы можете использовать файлы для хранения на S3 и создать дистрибутив для предоставления контента через Интернет. А также вы можете создать дистрибутив для конкретных регионов.
Вы можете увидеть некоторые сравнения между Amazon S3 и Amazon Cloudfront здесь: http://www.bucketexplorer.com/documentation/cloudfront--amazon-s3-vs-amazon-cloudfront.html
[Раскрытие: Bucket Explorer]
Amazon S3 - это отличная платформа для хранения объектов, если вы ищете глобально распределенную систему хранения для защиты от спадающих областей / зон. Он также отлично подходит для статического / фиксированного контента, который не является транзакционным и не изменяется, например, картинки, видео, изображения, резервные копии и т. Д. Надеюсь, это поможет!