理解大型并行提取请求/响应和超时延迟

问题描述 投票:0回答:1

在终端上运行此操作。

为什么?提取是排队的请求吗?可能是对并行呼叫的OS限制吗?我不认为事件循环对这个简单的循环放大了很大。
node test.js

要为AportController设置超时,您应该使用特定超时创建一个信号对象。  您可以使用:
const run = async (i) => { const start = Date.now(); const abortController = new AbortController(); const timeout = setTimeout(() => { abortController.abort(); }, 2000); try { const v = await ( await fetch("https://slowendpoint.com", { method: "POST", body: JSON.stringify([{}]), signal: abortController.signal, }) ).text(); } catch (e) { console.error(e); } finally { console.log(i, "runtime", Date.now() - start); clearTimeout(timeout); } }; for (let i = 0; i < 10000; i++) { run(i); }
javascript node.js fetch
1个回答
0
投票


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.