O Guia de referência da API do AWS SDK para JavaScript V3 descreve em detalhes todas as operações da API para o AWS SDK para JavaScript versão 3 (V3).
Configurar maxSockets no Node.js
Em Node.js, defina o número máximo de conexões por origem. Se
maxSockets estiver definido, o cliente HTTP de baixo nível adicionará solicitações HTTP à fila e as atribuirá a soquetes à medida que forem disponibilizados.
Isso permite definir um limite máximo para o número de solicitações simultâneas para uma determinada origem por vez. Reduzir esse valor pode reduzir o número de erros de tempo limite ou de limitação recebidos. No entanto, isso também pode aumentar o uso da memória porque as solicitações serão enfileiradas até um soquete ser disponibilizado.
O exemplo a seguir mostra como definir maxSockets para um cliente do DynamoDB.
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 }); });
O SDK para JavaScript usa um maxSockets com valor de 50 se você não fornecer um valor ou um objeto de Agent. Se você fornecer um objeto de Agent, seu valor de maxSockets será usado. Para obter mais informações sobre como definir maxSockets no Node.js, consulte a documentação do Node.js
A partir da v3.521.0 do AWS SDK para JavaScript, você pode usar a sintaxe abreviadarequestHandler.
import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({ requestHandler: { requestTimeout: 3_000, httpsAgent: { maxSockets: 25 }, }, });