polly相关内容

Polly 断路器不使用 .net 核心 HTTP 客户端维护状态

我已经实施了波利重试和断路器策略(已封装).当调用失败并且电路为前一个调用打开时,下一个调用再次进入重试并再次击中断路器,而不是仅仅抛出断路器异常.我认为即使使用类型化的客户端,HTTP 客户端也会以某种方式重新创建.我无法弄清楚这个问题.这是代码 启动 public void ConfigureServices(IServiceCollection services){services ..
发布时间:2021-11-24 20:14:47 C#

Polly 在重试时更改查询字符串

我正在使用 .NET 5 并希望使用 Polly 在重试时更改请求的查询字符串.背景 - 我有一个固定的每分钟请求配额,这是我的 IP 地址允许的.如果超过限制,我会收到一个特定的 4xx 状态代码.在这种情况下,我想添加一个查询字符串参数 ?key=xxx 来处理峰值.计入 API 密钥的请求成本更高,并且仅应在临时达到配额时应用. 我在不同的地方多次使用命名客户端. 这是 Poll ..
发布时间:2021-11-24 18:07:15 C#/.NET

Polly 不会抛出一些异常?

我将 Polly 与 .net Core 一起使用.我的 ConfigureServices 是: private static void ConfigureServices(){var collection = new ServiceCollection();var timeoutPolicy = Policy.TimeoutAsync(3);collection.AddHttpClient( ..
发布时间:2021-11-24 14:45:41 C#/.NET

Polly 不会抛出一些异常?

我将 Polly 与 .net Core 一起使用.我的 ConfigureServices 是: private static void ConfigureServices(){var collection = new ServiceCollection();var timeoutPolicy = Policy.TimeoutAsync(3);collection.AddHttpClient( ..
发布时间:2021-11-24 14:43:31 C#/.NET

使用 HttpClient 和 Polly 发送并行请求,但每个主机只有一个,以优雅地处理 429 响应

简介: 我正在构建一个单节点网络爬虫来简单地验证 .NET Core 控制台应用程序中的 URL 是否200 OK.我在不同的主机上有一组 URL,我使用 HttpClient 向这些主机发送请求.我刚开始使用 Polly 和 TPL Dataflow. 要求: 我想支持与一个并行发送多个 HTTP 请求可配置的MaxDegreeOfParallelism. 我想将对任何给定主 ..
发布时间:2021-11-24 13:23:16 C#/.NET

Polly 不会抛出一些异常?

我将 Polly 与 .net Core 一起使用.我的 ConfigureServices 是: private static void ConfigureServices(){var collection = new ServiceCollection();var timeoutPolicy = Policy.TimeoutAsync(3);collection.AddHttpClient( ..
发布时间:2021-10-26 15:56:36 C#/.NET

HttpClient Polly WaitAndRetry 策略

有人知道为什么下面的策略在 3 次而不是 10 次后停止重试吗? IAsyncPolicyhttpWaitAndRetryPolicy =Policy.HandleResult(r => !r.IsSuccessStatusCode).OrHandle(r => true).WaitAndRetryAsync(10, retryAttempt => TimeSpan.FromSeconds(2) ..
发布时间:2021-07-09 19:54:32 C#/.NET

WaitAndRetryPolicy 与 BulkheadPolicy 相结合,优先重试.是否可以?

我正在评估 Polly 库的功能和灵活性,并作为其中的一部分在评估过程中,我试图将 WaitAndRetryPolicy 与 BulkheadPolicy 策略结合起来,以实现弹性和节流的组合.问题是这种组合的结果行为与我的期望和偏好不符.我希望优先重试失败的操作而不是执行新的/未处理的操作. 理由是(根据我的经验)失败的操作再次失败的可能性更大.因此,如果所有失败的操作都被推到整个过程的末 ..
发布时间:2021-06-14 18:51:05 C#/.NET

围绕 Polly 框架进行包装,以便实现可以停留在一个地方

我已经浏览了 Polly Framework 的文档和示例,它真的很棒而且使用起来很简单!! 就我而言,我想将所有异常分为 3 种类型:临时、永久和日志.现在,我想要一段代码,负责通过使用 Polly 框架进行等待和重试来处理本质上是临时的错误. WaitAndRetryAsync(new[]{TimeSpan.FromSeconds(1),TimeSpan.FromSeconds(2) ..
发布时间:2021-06-12 19:20:20 C#/.NET

如何在Flurl.Http中使用Polly?

当前我有此请求: 等待网址.SetQueryParams(queryString).SetClaimsToken().GetJsonAsync() 我想开始使用Polly( https://github.com/App-vNext/Polly )现在可以处理重试并提供更好的用户体验.例如,由于网络连接错误,第一次尝试时不会“挂断"用户.这是我尝试使用的示例: int [] htt ..
发布时间:2021-05-15 19:04:22 C#/.NET

使用其他代理服务器重试来自.NET的HTTP请求

我可以通过.NET应用程序中的代理发出HTTP请求.我可以使用许多代理服务器,有时一个或多个代理服务器会崩溃.如何让我的应用使用其他代理重试HTTP请求?我乐于接受任何建议,并且听说过有关Polly的更多信息,可增加弹性. 解决方案 如果您要使用Polly,也许是这样的: public void CallGoogle(){var proxyIndex = 0;var代理= new Li ..
发布时间:2021-05-15 18:53:26 C#/.NET

Polly重试时更改查询字符串

我正在使用.NET 5,并且想使用Polly更改重试请求的查询字符串.背景-我的IP地址允许每分钟有固定的请求配额.如果超过限制,我将得到一个特定的4xx状态代码.在这种情况下,我想添加查询字符串参数?key = xxx 来处理峰.计入API密钥的请求比较昂贵,并且仅在达到临时配额后才适用. 我在不同的地方多次使用命名的客户端. 这是Polly合适的方案吗?还是从设计的角度来看,以干净 ..
发布时间:2021-05-02 20:26:53 C#/.NET

Polly CircuitBreakerAsync无法正常工作

我正在尝试Polly CircuitBreakerAsync,但它没有按我预期的那样工作. 我在这里做错了什么?我希望下面的代码能够完成,并说电路仍处于关闭状态. 使用Polly;使用系统;使用System.Threading.Tasks;公共课程{公共静态无效的Main(string [] args){MainAsync(args).GetAwaiter().GetResult();}静 ..
发布时间:2021-04-12 18:46:35 C#/.NET

增加并行API调用的延迟

我正在使用Polly进行并行API调用.但是服务器每秒不能处理25个以上的呼叫,因此我想知道是否有办法在每25个呼叫之后添加1s的延迟? var策略=策略.Handle().RetryAsync(3);foreach(uploadMedia中的var mediaItem){var mediaRequest =新的HttpRequestMessage ..
发布时间:2021-04-12 18:45:21 C#/.NET

console.writeline中的内容不适用于Polly

目标: 显示消息“显示错误";尝试3次后. 问题: 为了实现目标,代码的哪些部分不起作用. 使用Polly ;使用系统;使用System.Net.Http;使用System.Threading.Tasks;命名空间ConsolePollyTest2{班级计划{静态void Main(string [] args){var maxRetryAttempts = 3;var pauseB ..
发布时间:2021-04-11 19:22:08 其他开发

Polly使用其他网址重试

我正在尝试使用polly创建解决方案,并在其中请求其他api. 我有一个指向同一服务的多个实例的URL列表. 我希望当第一个请求失败时,另一个应该自动从列表中的下一个URL开始. 这是一个示例,其中我尝试使用两个静态地址进行此​​行为 此解决方案的问题在于,直到我启动下一个请求,URL才会更改.我希望每次重试时都更改网址 公共静态void ConfigureUserServiceCl ..
发布时间:2021-04-11 19:03:54 C#/.NET

发送并行请求,但每个主机只能通过HttpClient和Polly发送一个请求,以正常处理429个响应

简介: 我正在构建一个单节点Web搜寻器,以简单地验证.NET Core控制台应用程序中的URL是否为 200 OK .我在使用 HttpClient 向其发送请求的不同主机上有一组URL.我对使用Polly和TPL数据流还很陌生. 要求: 我想支持同时发送多个HTTP请求和一个可配置的 MaxDegreeOfParallelism . 我想将对任何给定主机的并行请求数限制为1 ..
发布时间:2021-04-02 18:40:09 C#/.NET