Назад | Перейти на главную страницу

Ограничения пропускной способности потоковой передачи Amazon S3 + CloudFront

Я уже довольно давно искал возможность использовать Amazon Elastic Transcoder для реализации сценария потокового видео по запросу. Мне понятны переменные, связанные со стоимостью перекодирования и ограничениями. Я связан требованием о необходимости масштабирования полосы пропускания потоковой передачи, предпочтительно с шагом 200 Мбит / с.

Однако я изо всех сил пытаюсь понять стоимость потоковой передачи. Насколько я понимаю из документации, я бы перекодировал с помощью Elastic Transcoder, перенес бы эти файлы в Amazon S3, а затем обработал бы содержимое с помощью CloudFront. Стоимость транскодирования, хранения и объем CloudFront легко определить с помощью калькуляторов. Чего я не могу найти, так это информации о пропускной способности CloudFront + S3.

Предел пропускной способности CloudFront, по-видимому, составляет 40 Гбит / с. этот документ. Мне трудно поверить, что с меня не взимали бы дополнительную плату за такое использование полосы пропускания. Кроме того, я сомневаюсь, что серверы / узлы S3 могут обеспечить соединение со скоростью 40 Гбит / с.

Итак, реальный вопрос: какова будет максимальная пропускная способность потоковой передачи при использовании (Elastic Transcoder +) Amazon S3 + CloudFront? И как и когда это будет ограничено? Или цены на CloudFront просто определяются объемом исходящих данных?

Мне трудно поверить, что с меня не взимали бы дополнительную плату за такое использование полосы пропускания.

40 Гбит / сек - это не «использование», а доступная емкость. Плата за доступную емкость не взимается. Вы платите за использование, которое является «региональной передачей данных в Интернет (за ГБ)», указанной в таблице цен CloudFront. Когда CloudFront извлекает объекты из S3, плата за пропускную способность от S3 к CloudFront не взимается.

Кроме того, я сомневаюсь, что серверы / узлы S3 могут обеспечить соединение со скоростью 40 Гбит / с.

Ну ... не надо. :) С одним из больших типов экземпляров EC2 (например, hi1.4xlarge, cc2.8xlarge), если экземпляр находится в том же регионе, что и корзина, и вы загружаете большой файл из S3, вы можете легко увидеть загрузки отдельных файлов со скоростью передачи в диапазоне 1 Гбит / с от S3. У него есть емкость.

Конечно, 40 Гбит / с - это не та емкость, доступная для одной загрузки, но в масштабе AWS такая доступная пропускная способность вовсе не исключена. Ни один из компонентов описываемой вами архитектуры не предназначен для вас.

Его разделяют все или значительная часть клиентов, поэтому нет необходимости выделять 40 Гбит / с для вашего использования. Также не обязательно находиться в одном месте. В пограничной сети CloudFront имеется более 60 различных независимых местоположений, и каждый браузер подключается к тому, к какому CloudFront (с помощью Route 53, даже если ты не является клиентом Route 53) считает оптимальным периферийным местоположением для каждого браузера, используя свою собственную базу данных гео-маршрутизации, которая кажется адаптивной. (Мой тестовый сайт показывает, какое крайнее местоположение использует ваш браузер в настоящее время, если моя экспериментальная логика сопоставления может определить это - обычно это возможно - и я вижу, что оно периодически смещается, даже когда я захожу на сайт из дома.)

Всего с 40 краевыми точками, меньше текущего числа, комично маленький объем полосы пропускания, доступный на каждом краю, может обеспечить передачу 40 Гбит / с для глобально рассредоточенной аудитории.

Инфраструктура S3 каждого региона также распределена по оборудованию, охватывающему зоны доступности региона.

40 Гбит / с на самом деле даже не физическое ограничение ...

И как и когда это будет ограничено?

... это программный защитный контроль. Прямо как ограничение в 100 000 запросов в секунду. Запрос будет отклонен.

LimitExceeded - Запрос был отклонен из-за превышения лимита CloudFront.

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html

Сравните это с CapacityExceeded которые будут зарегистрированы в случае реальной проблемы в сети CloudFront, препятствующей обработке запроса.

В документации S3 не упоминается ограничение пропускной способности, но среди обсуждения масштабирования:

если вы ожидаете быстрого увеличения количества запросов для сегмента до более чем 300 PUT/LIST/DELETE запросов в секунду или более 800 GET запросов в секунду, мы рекомендуем вам открыть обращение в службу поддержки, чтобы подготовиться к рабочей нагрузке и избежать временных ограничений на частоту запросов.

http://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html

Обратите внимание, что это относится к «быстрому увеличению», подразумевая, что постепенное увеличение будет автоматически обрабатываться автоматическим масштабированием S3 и / или сегментированием его лексически отсортированного индекса ключа объекта.

Какой будет максимальная пропускная способность потоковой передачи при использовании (Elastic Transcoder +) Amazon S3 + CloudFront?

Все конечно конечно, но в случае с рассматриваемыми сервисами нет возможности осмысленно описать пределы. Фактически он неограничен для всех практических целей.

Заметьте, ради абсурдной игры с числами, что на самом деле с помощью 40 Гбит / с, весь день, всю ночь, в течение целого месяца почти наверняка никогда не произойдет, но если бы это произошло, то исходящие данные обошлись бы в сумму, превышающую 400000 долларов США (чрезвычайно округлое число, региональные уровни цен и скидок производят расчет сложный), но делает тот факт, что эта большая емкость технически "доступна", кажется немного более правдоподобной - емкость есть, если вы хотите заплатить за ее использование, но если вы ее не используете, вы не платите за Это.