问题标签 [retry-logic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
143 浏览

javascript - 如果在超时内没有 next(...) 调用,则重试(重新订阅)源 observable

我正在尝试获取一个 rxjs 源 observable,它代表一个向我推送数据的网络连接,如果我在超时期限内没有收到数据,则重新连接(通过重新订阅源 observable)。我当然可以用一种有点 hacky 的方式来写这个,但是有没有用 rxjs 简洁地写这个的好方法?

0 投票
3 回答
2596 浏览

java - 如何为具有重试逻辑的方法编写 junit 测试用例

retry 方法精确地查看特定文件的文件夹并返回该文件(如果存在)。它的最大重试次数为 3 并且在 2 次重试之间休眠 1 分钟。如果在 Max retries 文件不存在之后它会抛出一些异常

方法是这样的

0 投票
1 回答
497 浏览

java - SSLHandshakeException 可以是可重试的异常吗?

我有一个服务到服务的连接,它间歇性地从球衣客户端抛出 SSLHandshakeExceptions。

它只是间歇性地(很少)发生的事实告诉我,我的证书和 TLS 都配置正确。在我的客户端中,如果由于连接或套接字异常而失败,我将尝试重试连接。我正在考虑使 SSLHandshakeException 也是一个可重试的异常,因为在我的情况下它似乎应该是,但我想知道 SSLHandshakeException 是否可能是由连接或套接字问题引起的,如果是这样,有没有办法告诉?

更新:

异常消息似乎表明它可能是与 SSL 配置无关的连接问题:

0 投票
2 回答
1878 浏览

c# - 使用 Polly 库实现重试逻辑,不重复处理异常

如何使用 polly 实现重试逻辑,以延迟重试执行函数,但不处理异常。该场景是重复获取状态信息但没有预期的异常。

0 投票
1 回答
365 浏览

xamarin.android - 达到重试次数后 Polly 显示对话框

我正在使用 Polly 重试 Web 服务调用,以防调用因 WebException 而失败,因为我想确保在继续之前正确执行该方法。但是,有时即使重试几次,Web 方法仍然会抛出异常,我不想永远重试。我可以使用 Polly 显示一些确认对话框,例如“达到最大重试次数!确保连接已启用并按重试。” 然后重试计数器应重置为初始值并重新开始。我可以仅使用 Polly 来实现这一点,还是应该编写自己的逻辑?想法?

0 投票
1 回答
206 浏览

haskell - 超时时如何重试阻塞IO操作?

如何处理IOHaskell 中的阻塞操作?如何将此IO操作放在范围内并从另一种方法管理此范围?如果达到超时,我将重新调用此方法。abort通常在其他语言中,如果我在可配置的时间内没有得到结果,我可能会将它放在一个单独的线程中。(定时器是外部的。)

就我而言:我有很多,retries假设我想执行IO一个超时操作。当且仅当数量大于 0时,如何将IO操作置于超时范围内,以便在超时到期后调用它。retries

基本上:考虑到我们的IO动作ioMethod::IO String(我还没有查看 Haskell 的套接字库),我们假设它是一个黑盒子,

我不知道如何为最后一个条件/线建模。

PS我还不熟悉Haskell中的线程(这里是初学者),我确实认为超时范围应该在不同的线程中执行,并且不知何故我需要从我的主程序中检查它,或者召回它(如果重试> 0) 或结束 main 方法。

0 投票
2 回答
2379 浏览

rabbitmq - RabbitMQ - 处理不可靠的服务

我有一个服务 AAA,每分钟向 RabbitMQ 交换发布 10 到 5 万条消息。一个 .NET Core 服务 BBB 订阅一个队列(所有消息都被路由到该队列),并为每条消息通过 Internet 调用另一个 HTTP 服务 CCC。问题是 CCC 非常不可靠,一天几次它会完全关闭一两分钟,每周至少一次它会死掉一个小时。

我无法控制 AAA 或 CCC。如何使用 RabbitMQ 路由功能可靠地传递所有已处理的消息?

0 投票
2 回答
1039 浏览

ios - iOS - 重试机制

所以我正在尝试为我的网络调用(第一层)构建一个重试功能。这是功能:

实现是这样的:

当我故意使keepalive调用失败时,重试不会按预期工作,并且永远不会停止。

关于新功能或如何修复的任何建议?

0 投票
1 回答
41 浏览

java - 采用不同数量字符的Java方法引用?

我正在尝试将重试逻辑应用于许多方法。例如,我想重试一定次数的 method1(String) 和 method2(int, String)。

理想情况下,我希望:

在我可以作为参数method1或method2传入的方法中。有没有办法做到这一点?谢谢!

0 投票
1 回答
507 浏览

microsoft-graph-api - msgraph-sdk-java 中的超时和重试退避机制

我最近开始使用 msgraph-sdk for java 为 oneDrive 用户、文件等创建同步服务。我想通过批处理进行一些调用,例如获取多个文件的权限信息。sdk 是否支持批量调用。如果是,有人可以指出我的文档或一些相同的示例代码。

此外,如果出现 429 或超时错误等限制错误,我想为大多数调用添加退避和重试逻辑。有没有办法在创建 IGraphServiceClient 对象以执行重试回退逻辑时设置一些配置。