Skip to content

How to change outbox polling interval? #1217

@AlanTkachuk

Description

@AlanTkachuk

Hello,

I am using the Rebus outbox configuration, but realized latency within one of my sagas which has several jumps between bounded contexts. The saga went from around 0.5 seconds to 5 seconds. After looking into it, it seems like this is due to an outbox polling interval set within the Rebus.SqlServer.Outbox.OutboxForwarder class, specifically within the constructor:

_forwarder = asyncTaskFactory.Create("OutboxForwarder", RunForwarder, prettyInsignificant: false, 1);

The final parameter within the factory method is the "intervalSeconds" which I believe controls how often the outbox polls events. The default of 1 second is consistent with the latency I'm experiencing in my saga, given that it has around 4-5 steps. I was trying to figure out a way to adjust this polling interval to something smaller, like 0.1s, but I couldn't figure out an obvious way to do this within the rebus configuration.

Setting the "SetDueTimeoutsPollInteval" within the OptionsConfigurer didn't affect the polling speed, so that must be related to something else. If anyone has run into this issue when using the outbox pattern, could someone post a solution to the delays I'm experiencing?

Thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions