# 部署设置

**部署设置**页面允许您查看和配置 EMQX Cloud 部署的关键设置，包括部署信息、云平台详情以及 MQTT 协议行为。

您可以在部署左侧导航栏中的**部署设置**下访问此页面。

## 概览

**部署设置**页面包含两个选项卡：

- **常规设置**：查看部署详情、计费信息和云平台设置。

- **MQTT 设置**：配置 MQTT 参数，包括报文大小、共享订阅策略、会话行为和连接抖动检测。

## 常规设置

**常规设置**选项卡提供部署信息和云环境的概览，以及管理套餐和计费的选项。

### 部署信息

本节显示部署的基本信息。

| 字段         | 描述                                                         |
| ------------ | ------------------------------------------------------------ |
| **部署名称** | 部署的名称。您可以点击**编辑**图标直接修改，或使用**复制**图标进行复制。 |
| **部署 ID**  | 部署的唯一标识符。您可以在需要时（例如联系技术支持或使用 API 时）使用**复制**图标复制该 ID。 |
| **套餐**     | 当前部署套餐，例如**专有版**或 **Serverless**。 |
| **EMQX 版本** | 部署中当前运行的 EMQX 版本。                                 |
| **规格**     | 当前性能规格，表示支持的最大会话数和消息吞吐量（TPS）。点击**调整规格**可调整部署容量。详情请参见[调整部署规格](./change_tier.md)。 |
| **计费方式** | 当前计费方式（例如，*按量计费*）。您可以联系 EMQ 获取年度订阅或自定义定价方案。 |

> **提示：** 联系 EMQ 销售团队，了解专属折扣或独立容量选项。

### 云平台信息

本节显示托管部署的云基础设施信息。

| 字段       | 描述                                             |
| ---------- | ------------------------------------------------ |
| **云平台** | 托管部署的云服务商，例如**阿里云**或**腾讯云**。 |
| **地域**   | 云实例所在的地理区域（例如，*杭州*）。           |

### 删除部署

如需永久删除部署，请点击页面底部的**删除部署**。删除部署将移除与之关联的所有数据和配置。

::: warning 注意

此操作不可撤销。详情请参见[删除部署](./stop_delete_deployment.md)。

:::

## MQTT 设置

::: tip

MQTT 设置仅专有版 v5 部署支持。如果未看到相关配置选项，请[提交工单](../feature/tickets.md#工单)联系我们升级部署版本。

:::

**MQTT 设置**选项卡允许您自定义 MQTT 协议参数以满足应用需求。这些配置控制 EMQX Cloud 如何处理客户端会话、订阅、消息分发和报文验证。

### 基础设置

| 设置                                    | 描述                                                         |
| --------------------------------------- | ------------------------------------------------------------ |
| **最大报文大小**                        | 定义 EMQX 接受的最大 MQTT 报文大小。如果客户端发送的报文超过此限制，EMQX Cloud 将断开该客户端的连接。使用此设置可防止过大的载荷影响性能。 |
| **共享订阅策略**                        | 决定 EMQX Cloud 如何在共享订阅组的订阅者之间分发消息。可用策略：<br />`random`：将每条消息发送给随机选择的订阅者。<br />`round_robin`：按顺序将消息均匀分发给各订阅者。<br />`round_robin_per_group`：在每个共享订阅组内执行轮询分发。<br />`sticky`：持续向同一订阅者分发消息，直到该订阅者断开连接。<br />`local`：优先选择本地节点上的随机订阅者；如果不可用，则在集群中随机选择。<br />`hash_topic`：使用消息来源主题的哈希值确定订阅者。<br />`hash_clientid`：使用发送方客户端 ID 的哈希值确定订阅者。此设置有助于优化集群环境中的负载均衡和消息分发一致性。<br />有关共享订阅的更多信息，请参见 EMQX Cloud 中的[共享订阅](../connect_to_deployments/shared_subscription.md)以及 [MQTT 5.0 共享订阅介绍](https://www.emqx.com/zh/blog/introduction-to-mqtt5-protocol-shared-subscription)。 |
| **共享订阅初始 Sticky 选择策略**       | 指定在使用 `sticky` 分发策略时，如何选择第一个订阅者。<br />选项：<br />`random`：随机选择一个订阅者。<br />`local`：优先选择本地节点上的订阅者；如果不可用，则在集群中随机选择。<br />`hash_clientid`：对发布者的客户端 ID 进行哈希以选择订阅者。<br />`hash_topic`：对发布主题进行哈希以选择订阅者。<br />此设置决定共享订阅组激活时的初始负载分配行为。 |
| **使用对端证书作为用户名**              | 允许 EMQX Cloud 从客户端的 TLS 证书中提取 MQTT 用户名字段。适用于基于证书的身份验证。<br />支持的方式：<br />`cn`：使用证书的 Common Name（CN）字段。<br />`dn`：使用证书的 Distinguished Name（DN）字段。<br />`crt`：使用 DER 或 PEM 证书的原始内容。<br />`pem`：将 DER 内容转换为 PEM 格式并用作用户名。<br />`md5`：使用 DER 或 PEM 证书的 MD5 哈希值。<br />仅对 TLS 连接有效。 |
| **使用对端证书作为客户端 ID**           | 允许 EMQX Cloud 从客户端的 TLS 证书中派生客户端 ID。支持的方式与用户名相同：`cn`、`dn`、`crt`、`pem` 或 `md5`。<br />此选项为基于证书的连接提供了一种安全且确定性的客户端 ID 生成方式。 |
| **客户端属性**                          | 定义在连接时如何初始化自定义客户端属性。每个属性可声明为 `client_attrs.{NAME}`，其中 `{NAME}` 是 `set_as_attr` 配置字段中指定的属性键。注意：属性名称不允许使用 `tns`，该名称为系统内部占用。<br />初始化后的属性存储在 `client_attrs` 属性中，可用于动态渲染挂载点，或在身份验证和授权规则中引用。<br />有关如何配置和使用客户端属性的详细信息，请参见 [EMQX 客户端属性](https://docs.emqx.com/zh/emqx/latest/client-attributes/client-attributes.html)。 |

### 会话设置

| 设置             | 描述                                                         |
| ---------------- | ------------------------------------------------------------ |
| **会话过期间隔** | 指定客户端断开连接后 EMQX Cloud 保留会话数据的时长。仅适用于非 MQTT 5.0 连接。使用此设置可控制离线消息或订阅的保留时长。 |
| **最大飞行窗口** | 定义可同时发送而不需要确认的 QoS 1 和 QoS 2 消息的最大数量。较高的值可能提升吞吐量，但会增加内存使用。 |
| **最大消息队列长度** | 指定持久客户端断开连接或飞行窗口已满时的最大消息队列长度。当队列达到此限制时，较旧的消息将被丢弃。 |

### 连接抖动检测设置

连接抖动检测用于识别异常频繁断开和重连的客户端，并临时封禁这些客户端，以保护集群免受过载影响。连接抖动检测始终开启，无法关闭，仅可调整相关阈值。

| 设置             | 描述                                                         |
| ---------------- | ------------------------------------------------------------ |
| **最大断连次数** | 在检测时间窗口内，客户端允许的最大断连次数。超过此次数后，客户端将被封禁，封禁时长由**封禁时长**参数指定。 |
| **检测时间窗口** | 统计断连次数的时间窗口长度。                                 |
| **封禁时长**     | 抖动客户端 ID 超过断连阈值后被封禁的时长。                  |

### 更新配置

修改 MQTT 设置后，点击**更新**以应用更改。新配置将立即生效。
