MWS, прежде чем давать отправку, можем ли мы проверить, регулируется ли она в настоящее время? - PullRequest
1 голос
/ 06 июля 2019

У меня есть несколько процессов для отправки данных о продукте, цене и количестве.

Дросселирует, и я не могу отслеживать количество запросов на подачу фида.

Есть ли простой способ узнать, регулируется ли подача в настоящее время.

А если нет, и я отправляю в дросселированный канал, может ли amazon заблокировать меня для слишком большого количества запросов?

1 Ответ

1 голос
/ 09 июля 2019

Я не знаю вашу архитектуру, но кое-что, что я сделал бы, если бы у меня было время переписать мои системы, - это хранить каждый канал в очереди, такой как SQS. Не имеет значения, откуда исходят фиды, они будут храниться в очереди. Затем установите службу на таймере определенного типа, который будет читать следующий канал из вашей очереди и обрабатывать его. Если это задушено, подождите немного, пока ваша квота не увеличится. При этом вы будете обрабатывать только один канал за раз, и вам не придется организовывать несколько каналов, обрабатываемых одновременно из нескольких мест.

Если вы хотите запустить несколько экземпляров службы обработки, вам придется выполнить оркестровку между вашими потоками. Это может быть сложно, но позволит вам быстрее обрабатывать вашу очередь. Все зависит от того, сколько вы пытаетесь протолкнуть.

Удалять ленту в очереди, только когда она успешна.

В API Feeds есть почасовые квоты. Вы должны будете отслеживать это в вашем сервисе. Просто ++ ваш счетчик каждый раз, когда вы успешно звоните MWS. Я не думаю, что они заблокируют вас (в качестве наказания), более или менее они просто вернут неудачи, пока у вас не будет квоты.

https://docs.developer.amazonservices.com/en_IT/dev_guide/DG_Throttling.html

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...