

# Node.js 的默认客户端配置
<a name="DAX-client-config-JS"></a>

配置 DAX JavaScript SDK 客户端时，您可以自定义各种参数来优化性能、连接处理和错误恢复能力。下表概述了控制您的客户端与 DAX 集群交互方式的默认配置设置，包括超时值、重试机制、凭证管理和运行状况监控选项。有关更多信息，请参阅 [DynamoDBClient Operations](https://docs.amazonaws.cn/AWSJavaScriptSDK/v3/latest/client/dynamodb/)。


**DAX JS SDK 客户端默认值**  

| 参数 | 类型 | 说明 | 
| --- | --- | --- | 
| `region`<br />optional | `string` | 要用于 DAX 客户端的 Amazon Web Services 区域（示例：“us-east-1”）。如果未通过环境变量提供，则这是必需的参数。 | 
| `endpoint`<br />必需 | `string` | SDK 连接到的集群的端点。<br />示例：<br />未加密：dax-cluster-name.region.amazonaws.com<br />已加密：daxs://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com | 
| `requestTimeout`<br />默认值 6000 毫秒 | `number` | 这定义了客户端等待来自 DAX 的响应的最长时间。 | 
| `writeRetries`<br />默认值 1 | `number` | 尝试对失败的写入请求进行重试的次数。 | 
| `readRetries`<br />默认值 1 | `number` | 尝试对失败的读取请求进行重试的次数。 | 
| `maxRetries`<br />默认值 1 | `number` | 尝试对失败的请求进行重试的最大次数。<br />如果设置了 readRetries/writeRetries，则在 readRetries 和 writeRetries 中设置的配置优先于 maxRetries。 | 
| `connectTimeout`<br />默认值 10000 毫秒 | `number` | 与任何集群节点建立连接的超时（以毫秒为单位）。 | 
| `maxConcurrentConnections`<br />默认值 100 | `number` | 限制客户端实例可以在 DAX 集群中对于每个节点创建的并发连接总数。 | 
| `maxRetryDelay`<br />默认值 7000 毫秒 | `number` | 当 DAX 服务器通过将 `waitForRecoveryBeforeRetrying` 标志设置为 true 来指示需要恢复时，客户端将在尝试重试之前暂停。在这些恢复时段内，`maxRetryDelay` 参数决定了两次重试之间的最大等待时间。这一特定于恢复的配置仅在 DAX 服务器处于恢复模式时才适用。对于所有其它场景，重试行为遵循以下两种模式之一：要么是基于重试计数（由 `writeRetries`、`readRetries` 或 `maxRetries` 参数控制）的指数延迟，要么是根据异常类型立即重试。 | 
| `credentials`<br />optional | `[AwsCredentialIdentity](https://docs.amazonaws.cn/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-credential-providers/)` \| `[AwsCredentialIdentityProvider](https://docs.amazonaws.cn/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-credential-providers/)` | 要用于对请求进行身份验证的 Amazon 凭证。这可以作为 AwsCredentialIdentity 或 AwsCredentialIdentityProvider 提供。如果未提供，Amazon SDK 将自动使用默认凭证提供程序链。示例：`{ accessKeyId: 'AKIA...', secretAccessKey: '...', sessionToken: '...' }` \* @default 使用默认的 Amazon 凭证提供程序链。 | 
| `healthCheckInterval`<br />默认值 5000 毫秒 | `number` | 集群运行状况检查之间的间隔（以毫秒为单位）。间隔越短，检查频率越高。 | 
| `healthCheckTimeout`<br />默认值 1000 毫秒 | `number` | 运行状况检查完成的超时（以毫秒为单位）。 | 
| `skipHostnameVerification`<br />默认值 false | `boolean` | 跳过 TLS 连接的主机名验证。这对未加密的集群没有影响。默认设置为执行主机名验证，将其设置为 True 将跳过验证。请务必理解将其关闭的含义，即无法对您正在连接的集群进行身份验证。 | 
| `unhealthyConsecutiveErrorCount`<br />默认值 5 | `number` | 设置在运行状况检查间隔内发出节点运行状况不正常信号所需的连续错误数。 | 
| `clusterUpdateInterval`<br />默认值 4000 毫秒 | `number` | 返回对集群成员进行轮询以了解成员资格变更之间的间隔。 | 
| `clusterUpdateThreshold`<br />默认值 125 | `number` | 返回一个阈值，低于该阈值将不会对集群进行轮询来了解成员资格变更。 | 
| `credentailProvider`<br />可选 \| 默认值 null | `[AwsCredentialIdentityProvider](https://docs.amazonaws.cn/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-credential-providers/)` | 用于对 DAX 请求进行身份验证的 Amazon 凭证的用户定义提供程序。 | 


**DaxDocument 的分页配置**  

| 名称 | 类型 | Detail | 
| --- | --- | --- | 
| `client` | DaxDocument | DaxDocument 类型的实例。 | 
| `pageSize` | 数字 | 确定每页项目数。 | 
| `startingToken`<br />可选 | any | 先前响应中的 LastEvaluatedKey 可用于后续请求。 | 

有关分页的用法，请参阅 [TryDax.js](DAX.client.tutorial-TryDax.md)。