Node.js에서 maxSockets 구성 - AWS SDK for JavaScript

곧 AWS SDK for JavaScript(v2)에 대한 지원이 종료될 예정임을 알려드립니다. AWS SDK for JavaScript v3로 마이그레이션하실 것을 권장합니다. 마이그레이션 날짜, 추가 세부 정보 및 방법에 대한 자세한 내용은 링크된 공지 사항을 참조하세요.

Node.js에서 maxSockets 구성

Node.js에서 오리진당 최대 연결 수를 설정할 수 있습니다. maxSockets이 설정된 경우, 하위 HTTP 클라이언트가 요청을 대기열에 넣고 소켓이 사용 가능해지면 소켓에 요청을 할당합니다.

그러면 지정된 오리진에 한 번에 동시 요청할 수 있는 수의 상한을 설정할 수 있습니다. 이 값을 낮추면 수신하는 조절 또는 시간 초과 오류 수를 줄일 수 있습니다. 그러나 소켓이 사용 가능해질 때까지 요청이 대기되므로 메모리 사용량도 증가할 수 있습니다.

다음 예제에서는 생성하는 모든 서비스 객체에 대해 maxSockets를 설정하는 방법을 보여 줍니다. 이 예제에서는 각 서비스 엔드포인트에 최대 25개의 동시 연결을 허용합니다.

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

서비스당 이와 동일한 작업을 수행할 수 있습니다.

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 } });

기본값인 https를 사용하면 SDK가 globalAgent에서 maxSockets 값을 가져옵니다. maxSockets 값이 정의되지 않았거나 Infinity인 경우, SDK가 maxSockets 값을 50으로 가정합니다.

Node.js에서 maxSockets 설정에 대한 자세한 내용은 Node.js 온라인 설명서를 참조하세요.