天天看点

ADO.NET的弹性连接控制[ADO.NET idle connection resiliency]

说明

DefaultExecutionStrategy

执行时不包含重试策略,这会自动用于SQL Server以外的数据库。

DefaultSqlExecutionStrategy

执行时不包含重试策略,但是它会包装例外状况,由使用者决定是否要启用Connection Resiliency。

DbExecutionStrategy

这个对象是所有执行策略的基础类别,它包装了指数式重试原则 (exponential retry policy) 算法,并且由实作来决定要如何使用这个算法,以及重试的次数等。

SqlAzureExecutionStrategy

专为SQL Azure Database设计的重试策略,会依照已知的可能瞬断问题进行自动的重试处理。

提供了一个可扩展的Retry逻辑处理瞬态错误,不仅限于SQL Server。

支持一系列的重试方案(固定周期,渐进周期,随机指数退避)

支持SQL 连接和SQL命令使用不同的Retry策略。

支持Retry后的回调,通知用户代码是否发生了Retry情况

支持快速重试模式,当第一次发生进行Retry时会立即尝试而没有延迟

允许在应用程序配置文件中定义Retry策略

支持同步和异步请求

下面是几个类似的项目:

本文转自 张善友 51CTO博客,原文链接:http://blog.51cto.com/shanyou/1346020,如需转载请自行联系原作者