Ваше приложение отправляет запросы в Amazon Elastic Transcoder быстрее, чем максимальная скорость запросов.

Существует служба Windows, которая принимает видеофайлы, поставляемые некоторыми поставщиками контента. Затем служба Windows пытается создать воспроизведение для каждого заданного видеофайла с помощью Amazon Elastic Transcoder.

Для каждого видеофайла создается около 15 представлений путем создания одного задания и последующего добавления к нему 15 выходов.

Это работает отлично, пока я не запускаю свой тестовый проект несколько раз подряд. Затем я получаю это сообщение об ошибке «Ваше приложение отправляет запросы в Amazon Elastic Transcoder быстрее, чем максимальная скорость запросов».

Я получаю сообщение об ошибке, когда просто проверяю логику своей службы Windows, в то время как при производственных мощностях эта служба Windows будет принимать около 50 000 видеофайлов каждый день. Это означает, что я также буду создавать 50 000 рабочих мест каждый день. Для такого большого объема запросов Elastic Transcoder кажется слишком слабым.

Есть ли конфигурация для увеличения дросселирования на Elastic Transcoder? Если нет, каков фактический предел количества заданий в минуту?


person Aref    schedule 09.09.2015    source источник


Ответы (1)


Вот найденная мною документация.

Короче говоря:

  • Для каждого региона по 4 пайплайна на аккаунт AWS
  • Максимальное количество заданий в очереди: 100 000 на конвейер.
  • Вы можете отправлять два запроса на создание задания в секунду на один аккаунт AWS с постоянной скоростью; разрешены короткие всплески по 100 запросов в секунду.

Другими словами, у вас не должно быть проблем с 50 тысячами заданий в день, если вы не отправляете их со скоростью выше 2 заданий в секунду в течение любого продолжительного периода времени.

person Andreas Eriksson    schedule 09.09.2015
comment
Спасибо. Я разверну эту службу Windows на пяти разных серверах, поэтому я должен убедиться, что эти серверы не будут отправлять более двух (или одного) запросов в секунду. Является ли создание очереди, добавление запросов на работу в эту очередь, а затем извлечение заданий из этой очереди на основе временного интервала лучшим способом убедиться, что я превыслю лимит? есть ли способ проще? - person Aref; 10.09.2015
comment
Если у вас есть пять разных сервисов, работающих независимо друг от друга, вам придется ввести время простоя 2500 мс между каждым запросом на задание, чтобы убедиться, что вы (статистически) отправляете максимум 2 задания в секунду, вы все равно будете нести ответственность чтобы иногда достигать 5 JPS. Другая альтернатива — разрешить службам работать посменно, т. е. одна служба загружается только в течение первых десяти секунд каждой минуты, следующая — в течение следующих десяти секунд и т. д. с льготным периодом 500 мс между каждым созданием задания. - person Andreas Eriksson; 10.09.2015
comment
Я работаю с ET уже почти год, но использую веб-интерфейс. Это был ужасный опыт, поэтому я, наконец, просто создал данные/код, необходимые для использования API, и мгновенно достиг этих пределов. Я почти убежден, что ET не предназначен для использования в масштабах/предприятиях. - person rainabba; 17.02.2016