gpt4 book ai didi

node.js - 由于每秒上限而限制和排队 API 请求

转载 作者:IT老高 更新时间:2023-10-28 21:52:56 25 4
gpt4 key购买 nike

我正在使用 mikeal/request进行 API 调用。我最常使用的 API 之一(Shopify API)。最近推出了一个新的call limit ,我看到如下错误:

Exceeded 6.0 calls per second for api client. Slow your requests or contact support for higher limits.

我已经升级了,但无论我获得多少带宽,我都必须考虑到这一点。 Shopify API 的大部分请求都在 async.map() 内。函数,循环异步请求,并收集主体。

我正在寻找任何帮助,也许是一个已经存在的库,它将包裹请求模块并实际阻止、 sleep 、限制、分配、管理许多异步触发的同时请求并将它们限制为一次说 6 个请求。如果不存在这样的项目,我对从事这样的项目没有任何问题。我只是不知道如何处理这种情况,我希望有某种标准。

我用 mikeal/request 订了票.

最佳答案

对于替代解决方案,我使用了 node-rate-limiter像这样包装请求函数:

var request = require('request');
var RateLimiter = require('limiter').RateLimiter;

var limiter = new RateLimiter(1, 100); // at most 1 request every 100 ms
var throttledRequest = function() {
var requestArgs = arguments;
limiter.removeTokens(1, function() {
request.apply(this, requestArgs);
});
};

关于node.js - 由于每秒上限而限制和排队 API 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20253425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com