Amazon SDK for JavaScript V3 API 参考指南详细描述了 Amazon SDK for JavaScript 版本 3 (V3) 的所有API操作。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Node.js maxSockets 中进行配置
在 Node.js 中,您可以设置每个源的最大连接数。如果
maxSockets
已设置,则低级HTTP客户端会对请求进行排队,并在它们可用时将其分配给套接字。
这使您可以设置在某个时间对给定源的并发请求数的上限。降低此值可以减少收到的限制或超时错误的数量。但是,它还会增加内存使用量,因为请求进行排队,直到套接字变为可用状态。
以下示例演示了如何为 DynamoDB 客户端设置 maxSockets
:
import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; import { NodeHttpHandler } from "@smithy/node-http-handler"; import https from "https"; let agent = new https.Agent({ maxSockets: 25 }); let dynamodbClient = new DynamoDBClient({ requestHandler: new NodeHttpHandler({ requestTimeout: 3_000, httpsAgent: agent }); });
如果您不SDK提供maxSockets
值或Agent
对象,for 将 JavaScript 使用值 50。如果您提供一个Agent
对象,则将使用其maxSockets
值。有关maxSockets
在 Node.js 中设置的更多信息,请参阅 Node.js 文档
从 v3.521.0 起 Amazon SDK for JavaScript,您可以使用以下速记语法进行配置requestHandler
import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({ requestHandler: { requestTimeout: 3_000, httpsAgent: { maxSockets: 25 }, }, });