我正在开发一个项目,需要在我的应用程序和几个 Shopify 商店之间同步价格。在我的应用程序中,每个用户都可以链接他们的 Shopify 商店,当我的应用程序中的产品价格发生变化时,系统会通过 Shopify API 向商店发出更新价格的请求。
但是,每个 Shopify 商店都有速率限制,这意味着我们需要在每个商店的请求之间添加一些毫秒的延迟,以避免超过此限制。
这个过程的想法是并行同步至少 10 个商店。我正在考虑使用带有 RabbitMQ 或 Kafka 的队列来在并行处理时保持速率限制受控。
问题是同步请求可以随时到达,这意味着一个队列可能有来自不同用户的请求,从而无法控制每个存储的速率限制。
有效处理此问题并避免“请求过多”错误的最佳方法是什么?
感谢您的帮助!