在特定的给定时间点,如果我们针对我们的cosmos db帐户引用azure门户指标选项,它会显示429发生了很多次,但使用cosmos sql sdk编写的c#代码(对于相同的cosmos db帐户/数据库/集合),即使是单次也不会抛出429,因为为每次发生429/throttle问题而编写的RU放大逻辑根本没有被触发。困惑的是油门是像azure门户显示的那样发生的,还是它投影了错误的数据。哪个是真的,门户数据还是c#代码行为?如果门户是正确的,为什么c#代码没有引发相同的问题?请提出任何建议。
异常捕获逻辑:
catch (DocumentClientException ex)
{
if (ex.StatusCode == (HttpStatusCode)429)
{
//RU scale up logic
}
}
SDK将在收到429时自动重试,最多可达RetryOptions.MaxRetryAttemptsOnThrottledRequests
中定义的次数。
如果不希望 SDK 重试,则可以将此值设置为 0,任何 429 都将抛出到您的用户代码中:
ConnectionPolicy connectionPolicy = new ConnectionPolicy();
connectionPolicy.RetryOptions.MaxRetryAttemptsOnThrottledRequests = 0;
DocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key", connectionPolicy);
问题内容: 我在接口抛出异常的地方读了这段代码,但是实现它的类却没有抛出异常或捕获异常,这是为什么呢?在Java中合法或安全吗? 问题答案: 实现和扩展的一般规则是,您可以使新类或接口的限制较少,而不能限制较多。如果您认为将异常作为限制进行处理的要求,则未声明异常的实现的限制性较小。对该接口进行编码的任何人都不会遇到您的课的麻烦。 -斯坦·詹姆斯 作为http://www.coderanch.co
我的类有一个名为的私有对象,其构造函数需要另一个类的实例。 如果失败,如何引发异常?
本文向大家介绍Django 在代码中指定不同的数据库,包括了Django 在代码中指定不同的数据库的使用技巧和注意事项,需要的朋友参考一下 示例 普通方法将使用默认数据库,或者,如果使用数据库路由器,它将使用中指定的数据库。您可以使用以下方法覆盖它:obj.save()db_for_write 同样,为了阅读:
问题内容: 以下Java代码按预期抛出: 但是以下示例仅在的内容上有所不同,执行时没有任何例外: 打印输出“ [lalala]”。为什么在第一个示例执行时第二个示例却不抛出? 问题答案: 简短答案 因为不能保证迭代器的快速失败行为。 长答案 之所以会出现此异常,是因为除非通过迭代器,否则无法在迭代集合时操作集合。 坏: 好: 现在转到“为什么”:在上面的代码中,请注意如何执行修改检查- 删除操作将
我在使用Azure云服务时遇到了瓶颈问题。该服务过去工作正常,基本上它所做的就是将Azure存储帐户中的信息存储到Azure数据库中。上个月没有数据加载到Azure数据库中,服务有一段时间没有更改,数据库没有锁定问题,但当我尝试检查我的存储帐户时,它在新的Azure门户中不可用,但在旧门户中不可用,从旧门户我没有与新门户相同的选项。指标是可以的,但是我遇到的这个瓶颈问题,数据加载可能与新门户中丢失
我们有一个多模块Maven项目,并使用JaCoCo进行代码覆盖率分析。我准备了文件来运行测试用例并获取代码覆盖率。 下面是我的,添加了JaCoCo和其他插件,并且在Azure Devops构建中,在Maven任务中传递命令,尝试,参数在中定义。 我在日志中看到以下细节。 Maven日志: 分析完成日志: 测试运行: 目标:“清洁验证声纳:声纳” 选项:'-dsonar.projectkey=**-