适用于 JavaScript 的 AWS SDK V3 API 参考指南详细描述了 适用于 JavaScript 的 AWS SDK 版本 3 (V3) 的所有 API 操作。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Node.js 中使用保持活动状态重用连接
默认的 Node.js HTTP/HTTPS 代理会为每个新请求创建一个新的 TCP 连接。为了避免建立新连接的成本,默认情况下会 适用于 JavaScript 的 AWS SDK 重复使用 TCP 连接。
对于短期操作(如 Amazon DynamoDB 查询),设置 TCP 连接的延迟开销可能大于操作本身。此外,由于 Dy namoDB 静态加密AWS KMS与集成,因此您可能会遇到数据库延迟,必须为每个操作重新建立 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
,您还可以使用 keepAliveMsecs
设置 TCP Keep-Alive 数据包的初始延迟,默认值为 1000ms。有关详细信息,请参阅 Node.js 文档