【问题标题】:Nservicebus - Temporarily suspend endpointNservicebus - 暂时挂起端点
【发布时间】:2016-04-07 05:34:01
【问题描述】:

我使用 Nservicebus 4.7.5 和 azure 服务总线作为传输。我的端点只是事件的订阅者,它不发布任何内容。我的端点接收到天蓝色存储的事件调用并执行 CRUD。

现在当 azure 存储数据中心暂时离线时,端点将继续运行,消息将进入死信队列。

我正在寻找一种方法来在我的存储中出现临时问题时停止我的端点消耗消息,从而防止它们陷入死信。

【问题讨论】:

    标签: nservicebus azureservicebus azure-servicebus-topics


    【解决方案1】:

    您是否认为 ASB 会丢弃旧消息而您根本不会有任何消息?至少现在您将它们放在错误队列中。将一个罕见的异常计算在内并在它发生时有办法解决它要好得多,而不是构建一个解决方法。

    想象一下,我的办公室停电了,而且每隔六个月就会发生一次。因此,我不会开始建造柴油发电机设施。相反,我会制定一些计划,如何使用我已有的资源来处理这些中断。

    如果您想完全停止处理,您可以执行circuit breaker。 NServiceBus 在传输中断时使用它。如果 blob 存储对于您的服务同样重要,您也可以使用它。它会在重试后完全停止服务(除非您开发自己的版本)。

    【讨论】:

    • 补充@Alexey 所说的内容,您还可以配置您的SLR 以进行扩展。将 SLR 设置为 30 分钟和 3 次尝试,您将在 30、60、90 分钟后重试。这也有助于解决中断情况。
    猜你喜欢
    • 1970-01-01
    • 2015-03-19
    • 2015-04-13
    • 2014-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多