MWS 在提交 Feed 之前,我们可以检查它当前是否正在节流吗?

MWS before giving submit feed, can we check if it is currently throttling?

我有多个流程来提交产品、价格和数量数据的 Feed。

它节流了,我无法跟踪给定的 Feed 提交请求数。

有没有一种简单的方法可以知道 Feed 当前是否正在节流。

如果没有,并且我提交到受限制的 Feed,亚马逊会因为请求太多而阻止我吗?

我不知道您的体系结构,但如果我有时间重写我的系统,我会做的是将每个提要存储在一个队列中,例如 SQS。提要来自何处并不重要,它们将存储在队列中。然后在某种类型的计时器上设置一个服务,该服务将从您的队列中读取下一个提要,并对其进行处理。如果它受到限制,请暂停一下,直到您的配额增加。这样做时,您一次只会处理一个提要,而不必协调一次从多个地方处理的多个提要。

如果您想 运行 处理服务的多个实例,则必须在线程之间进行编排。这可能会变得棘手,但可以让您更快地处理队列。一切都取决于您要努力完成多少。

仅在成功时删除队列中的提要。

Feed 有每小时配额 API。你必须在你的服务中跟踪它。每次您成功致电 MWS 时只需 ++ 您的柜台。我不认为他们会阻止你(作为惩罚),或多或少他们只会 return 失败,直到你有可用的配额。

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

希望对您有所帮助。