AWS SDK for JavaScript V3 API 참조 안내서는 AWS SDK for JavaScript 버전 3(V3)의 모든 API 작업을 자세히 설명합니다.
Node.js에서 연결 유지를 이용해 연결 재사용
기본 Node.js HTTP/HTTPS 에이전트는 모든 새 요청에 대해 새로운 TCP 연결을 생성합니다. 새 연결을 설정하는 데 드는 비용을 피하기 위해 AWS SDK for JavaScript에서는 기본적으로 TCP 연결을 재사용합니다.
Amazon DynamoDB 쿼리와 같은 수명이 짧은 작업의 경우 TCP 연결 설정에 따른 지연 시간 오버헤드가 작업 자체보다 클 수 있습니다. 또한 DynamoDB 저장 데이터 암호화는 AWS KMS와 통합되므로 각 작업에 대해 새 AWS KMS 캐시 항목을 다시 설정해야 하는 데이터베이스에서 지연 시간이 발생할 수 있습니다.
TCP 연결을 재사용하지 않으려면, 다음 DynamoDB 클라이언트 예시에서와 같이 서비스별 클라이언트 기준으로 keepAlive를 사용하여 활성 상태의 연결 재사용을 비활성화할 수 있습니다.
import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; import { NodeHttpHandler } from "@smithy/node-http-handler"; import { Agent } from "https"; const dynamodbClient = new DynamoDBClient({ requestHandler: new NodeHttpHandler({ httpsAgent: new Agent({ keepAlive: false }) }) });
keepAlive가 활성화된 경우 기본값이 1000ms인 keepAliveMsecs를 사용하여 TCP 연결 유지 패킷에 대한 초기 지연을 설정할 수도 있습니다. 자세한 내용은 Node.js 설명서