Javascript 针对并发请求的Axios套接字挂起
几个月来,我一直在使用Axios调用内部API(Apache)。平均而言,每个请求大约有3k个简单的GET请求来检索一些JSON记录 我使用Javascript 针对并发请求的Axios套接字挂起,javascript,node.js,axios,bluebird,Javascript,Node.js,Axios,Bluebird,几个月来,我一直在使用Axios调用内部API(Apache)。平均而言,每个请求大约有3k个简单的GET请求来检索一些JSON记录 我使用axios发送请求(通过代理),同时使用Bluebird执行此操作 下面是一些示例代码 const results = await Bluebird.map(urls, function (url) { const promise = axios.get(url, { proxy: {
axios
发送请求(通过代理),同时使用Bluebird
执行此操作
下面是一些示例代码
const results = await Bluebird.map(urls, function (url) {
const promise = axios.get(url, {
proxy: {
host: parsedFixieUrl.hostname,
port: parsedFixieUrl.port,
auth: {
username: username,
password: password
}
},
//This didn't fix the issue
// httpsAgent: new https.Agent({ keepAlive: true })
});
}, { concurrency: 10 });
我正在附加Rax
以重试请求
import rax from 'retry-axios';
import axios from 'axios';
const interceptorId = rax.attach(axios);
这在一段时间内效果很好。就在最近,url
的数量增加了约130个(大约
code: 'ECONNRESET'
raxConfig:
{ currentRetryAttempt: 2,
retry: 3,
retryDelay: 100,
instance: [Object],
backoffType: 'exponential',
httpMethodsToRetry: [Array],
noResponseRetries: 2,
statusCodesToRetry: [Array] },
data: undefined },