Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
适用对象:
Mongodb
重要
你是否正在寻找一种数据库解决方案,以应对需要高扩展性、99.999% 可用性服务级别协议(SLA)、即时自动扩展和跨多个区域的自动故障转移的场景? 请考虑使用 Azure Cosmos DB for NoSQL。
如果超出集合的吞吐量限制 (RU),则 Azure Cosmos DB for MongoDB 操作可能会遇到速率限制,从而导致 Mongo 请求指标出现 16500 错误。
启用服务器端重试 (SSR) 以自动重试操作。 SSR 会在您帐户的所有集合中快速重试请求。 如果超时达到 60 秒,客户端将收到 ExceededTimeLimit 异常 (50)。
使用 Azure 门户
登录到 Azure 门户。
导航到 Azure Cosmos DB for MongoDB 帐户。
转到“设置”部分下面的“功能”窗格 。
选择“服务器端重试”。
单击“启用”,为您帐户中的所有集合启用此功能。
使用 Azure CLI
检查是否已为你的帐户启用了 SSR:
az cosmosdb show --name accountname --resource-group resourcegroupname为数据库帐户中的所有集合启用 SSR。 此更改生效可能需要长达 15 分钟的时间。
az cosmosdb update --name accountname --resource-group resourcegroupname --capabilities EnableMongo DisableRateLimitingResponses以下命令将通过从功能列表中移除
DisableRateLimitingResponses,禁用数据库帐户中所有集合的服务器端重试。 此更改生效可能需要长达 15 分钟的时间。az cosmosdb update --name accountname --resource-group resourcegroupname --capabilities EnableMongo
常见问题解答
如何监视服务器端重试的效果?
可以在 Azure Cosmos DB 资源日志中搜索包含“estimatedDelayFromRateLimitingInMilliseconds”的日志条目。
服务器端重试是否会影响我的一致性级别?
服务器端重试不会影响请求的一致性。 如果请求受到速率限制,则会在服务器端重试。
服务器端重试是否影响客户端可能收到的任何类型的错误?
否,服务器端重试只会通过在服务器端重试来处理速率限制错误。 有了此功能,就不必在客户端应用程序中处理速率限制错误。 所有其他错误都会传递到客户端。
后续步骤
若要了解有关排除常见错误的更多信息,请参阅此文:
尝试为迁移到 Azure Cosmos DB 进行容量计划? 可以使用有关现有数据库群集的信息进行容量规划。
- 要了解如何跨分区重新分配吞吐量,请参阅了解如何跨分区重新分配吞吐量
- 如果只知道现有数据库群集中的 vCore 和服务器数量,请阅读使用 vCore 或 vCPU 估算请求单位
- 若知道当前数据库工作负载的典型请求速率,请阅读使用 Azure Cosmos DB 容量计划工具估算请求单位