Rebus 断路器的实现?

标签 rebus circuit-breaker

我最近一直在与 Rebus 合作,到目前为止,它一直很棒。

一个值得关注的领域是,当我们有数千或数十万条消息正在处理并且依赖服务(如数据库或 RabbitMQ)出现故障时。

在这种情况下,我们不需要错误队列中的所有消息。我想知道 Rebus 是否有任何内置的断路器机制?比如我在 60 秒内达到了 10% 的故障率阈值,并希望在一段时间内禁用端点,以防基础设施出现故障并需要恢复。

最佳答案

伙计,这是一个绝妙的主意!

它甚至可以在不接触 Rebus 的内部结构的情况下制作,只需将装饰器卡在 IErrorHandler 上即可。 ,这将检测错误率,然后将 worker 数量设置为 0 一段时间。

如果您对此感兴趣,可以在 GitHub 上将其作为问题提出。 🙂

关于Rebus 断路器的实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62069828/

相关文章:

rebus - 为什么我不能推迟为单向客户端发送消息

Rebus RabbitMQ IHandleMessage 不工作

azure - 同一消息的多个订阅者 Rebus Azure 服务总线

kubernetes - Istio(0.7.1) : Circuit Breaker Doesn't work for httpConsecutiveErrors

c# - 使用 Rebus 作为 ESB

c# - Rebus 和 RabbitMQ - 使用多个独立的 Rebus 实例?

java - 使用 RetryPolicy 和 CircuitBreaker 进行故障保护会抛出 CircuitBreakerOpenException

api - Envoy Proxy 可以用来封装第三方 API 吗?

java - 弹性4j - 请求超时

c# - Polly 断路器模式 - 用于测试连接字符串