

 [適用於 JavaScript 的 AWS SDK V3 API 參考指南](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/)詳細說明 第 3 版 適用於 JavaScript 的 AWS SDK (V3) 的所有 API 操作。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 Node.js 中使用保持連線
<a name="node-reusing-connections"></a>

預設 Node.js HTTP/HTTPS 代理程式會為每個新的請求建立新的 TCP 連線。為了避免建立新連線的成本， *預設*會 適用於 JavaScript 的 AWS SDK 重複使用 TCP 連線。

對於短期操作，例如 Amazon DynamoDB 查詢，設定 TCP 連線的延遲額外負荷可能大於操作本身。此外，由於 DynamoDB [靜態加密](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/encryption.howitworks.html)已與 整合[AWS KMS](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/encryption.howitworks.html)，因此資料庫可能會遇到延遲，您必須為每個操作重新建立新的 AWS KMS 快取項目。

如果您不想重複使用 TCP 連線，您可以停用`keepAlive`以每個服務用戶端為基礎與 即時重複使用這些連線，如下列 DynamoDB 用戶端範例所示。

```
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`已啟用 ，您也可以使用 設定 TCP Keep-Alive 封包的初始延遲`keepAliveMsecs`，預設為 1000 毫秒。請參閱 [Node.js 文件](https://nodejs.org/api/http.html#new-agentoptions)了解詳細資訊。