

# 配置 DAX 客户端
<a name="dax-config-dax-client"></a>

DAX 集群是一个基于实例的集群，可以使用各种 DAX SDK 进行访问。每个 SDK 都为开发人员提供了可配置的选项，例如 requestTimeout 和连接，来满足特定的应用程序要求。

配置 DAX 客户端时，一个关键的考虑因素是客户端应用程序的规模，具体而言，是客户端实例与 DAX 服务器实例的比例（最大为 11）。大型客户端实例集可以生成与 DAX 服务器实例的大量连接，这可能会使它们不堪重负。本指南概述了 DAX 客户端配置的最佳实践。

## 最佳实践
<a name="dax-guidance-configuring-dax-client-best-practices"></a>

1. **客户端实例**：实现单例客户端实例，以确保跨请求重用实例。有关实施详细信息，请参阅[第 4 步：运行一个示例应用程序](DAX.client.run-application.md)。

1. **请求超时**：虽然应用程序通常需要较低的请求超时，才能确保上游系统的延迟降至最低，但将超时设置得过低可能会导致问题。当 DAX 服务器出现临时延迟峰值时，低超时可能会触发到服务器实例的频繁重新连接。在出现超时的情况下，DAX 客户端会终止现有的服务器节点连接，并建立新的服务器节点连接。由于建立连接是资源密集型的，因此大量连续连接会使 DAX 服务器过载。我们建议执行下列操作：
   + 保持默认的请求超时设置。
   + 如果较低超时是必需的，则使用较低的超时值实现单独的应用程序线程，并包括带有指数回退的重试机制。

1. **连接超时**：对于大多数应用程序，我们建议保持默认的连接超时设置。

1. **并发连接**：某些 SDK（例如 JavaV2）支持调整与 DAX 服务器的并发连接。重要注意事项：
   + DAX 服务器实例可以处理多达 40000 个并发连接。
   + 默认设置适用于大多数用例。
   + 大型客户端实例加上高并发连接可能会使服务器过载。
   + 较低的并发连接值可降低服务器过载的风险。
   + 性能计算示例：
     + 假设请求延迟为 1 毫秒，理论上每个连接每秒可以处理 1000 个请求。
     + 对于 3 节点集群，连接到所有节点的单个客户端实例每秒可以处理 3000 个请求。
     + 通过 10 个连接，客户端每秒可以处理大约 30000 个请求。

       建议：从较低的并发连接设置开始，然后根据预期的生产工作负载模式通过性能测试进行验证。