如何增加NServiceBus 4.x TimeoutPersisterReceiver断路器

如何增加NServiceBus 4.x TimeoutPersisterReceiver断路器,nservicebus,circuit-breaker,Nservicebus,Circuit Breaker,如何增加NServicebus 4.x的TimeoutPersisterReceiver的时间跨度 我们如何从容器中获取TimeoutPersisterReceiver对象并修改SecondsToSleepBetweenPolls值?投票次数是否有属性 以下链接仅适用于5.x和6.x而不适用于4.x: 编辑:嗨,玛辛, 谢谢我已经查看了您提供的链接: NServicebus在5.x上进行了修复,但在4.x上没有。 @JustaBitoCode提到配置TimeoutPersisterReceiv

如何增加NServicebus 4.x的TimeoutPersisterReceiver的时间跨度

我们如何从容器中获取TimeoutPersisterReceiver对象并修改SecondsToSleepBetweenPolls值?投票次数是否有属性

以下链接仅适用于
5.x
6.x
而不适用于
4.x

编辑:嗨,玛辛, 谢谢我已经查看了您提供的链接:

NServicebus在5.x上进行了修复,但在4.x上没有。 @JustaBitoCode提到配置TimeoutPersisterReceiver。但我找不到任何关于如何从容器中获取该实例并进行设置的链接。 另外,我的问题是,有没有办法控制断路器进行的轮询数量?


正如我所提到的,我暂时被4.x打动了。任何帮助都将不胜感激。

我假设您使用的是NServiceBus 4.x的最新次要版本(在撰写本文时为4.7.12)

首先,让我声明轮询超时存储的频率取决于您使用的持久性以及延迟消息的实际过期时间。NServiceBus中没有控制每单位时间内轮询次数频率的单一设置

现在回到设置
TimeoutPersisterReceiver.SecondsToSleepBetweenPolls
属性,您可以在实现
iWantorUnshenbusStartAndStops
接口的类中进行设置。您可以通过使用属性或构造函数注入获得
TimeoutPersisterReceiver

public class RunWhenBusStartsAndStops : IWantToRunWhenBusStartsAndStops
{
    public TimeoutPersisterReceiver Receiver { get; set; }

    public void Start()
    {
        Receiver.SecondsToSleepBetweenPolls = 15;
    }

    public void Stop()
    {
    }
}

依赖项注入容器应该注意注入适当的
TimeoutPersisterReceiver

我假设您使用的是最新的NServiceBus 4.x次要版本(在编写本文时是4.7.12)

首先,让我声明轮询超时存储的频率取决于您使用的持久性以及延迟消息的实际过期时间。NServiceBus中没有控制每单位时间内轮询次数频率的单一设置

现在回到设置
TimeoutPersisterReceiver.SecondsToSleepBetweenPolls
属性,您可以在实现
iWantorUnshenbusStartAndStops
接口的类中进行设置。您可以通过使用属性或构造函数注入获得
TimeoutPersisterReceiver

public class RunWhenBusStartsAndStops : IWantToRunWhenBusStartsAndStops
{
    public TimeoutPersisterReceiver Receiver { get; set; }

    public void Start()
    {
        Receiver.SecondsToSleepBetweenPolls = 15;
    }

    public void Stop()
    {
    }
}
依赖项注入容器应注意注入适当的
TimeoutPersisterReceiver

可能重复的