Configurazione di maxSockets su Node.js - AWS SDK for JavaScript

Abbiamo annunciato l'imminente uscita end-of-support per la AWS SDK for JavaScript v2. Ti consigliamo di migrare alla AWS SDK for JavaScript v3. Per date, dettagli aggiuntivi e informazioni su come effettuare la migrazione, consulta l'annuncio collegato.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione di maxSockets su Node.js

Su Node.js, è possibile impostare il numero massimo di connessioni per origine. Se maxSockets è impostato, il client HTTP di basso livello mette in coda le richieste e le assegna ai socket non appena diventano disponibili.

In questo modo, è possibile impostare un limite superiore per il numero di richieste simultanee per una determinata origine effettuate alla volta. Impostando un valore basso è possibile ridurre il numero di errori di timeout o throttling ricevuti. Tuttavia, potrebbe aumentare l'utilizzo della memoria, perché le richieste vengono accodate fino a quando un socket diventa disponibile.

L'esempio seguente mostra come impostare maxSockets per tutti gli oggetti di servizio creati. Questo esempio consente fino a 25 connessioni simultanee a ciascun endpoint del servizio.

var AWS = require('aws-sdk'); var https = require('https'); var agent = new https.Agent({ maxSockets: 25 }); AWS.config.update({ httpOptions:{ agent: agent } });

La stessa operazione può essere eseguita per servizio.

var AWS = require('aws-sdk'); var https = require('https'); var agent = new https.Agent({ maxSockets: 25 }); var dynamodb = new AWS.DynamoDB({ apiVersion: '2012-08-10' httpOptions:{ agent: agent } });

Quando si utilizza l'opzione predefinita https, l'SDK acquisisce il valore maxSockets da globalAgent. Se il valore maxSockets non è definito o è Infinity, l'SDK assume un valore maxSockets di 50.

Per ulteriori informazioni sulla configurazione di maxSockets su Node.js, consulta la documentazione online su Node.js.