指定公共交通中的发布超时

Specify Publish timeouts in mass transit

有没有办法在使用 MassTransit 库发布消息时指定超时值。消息代理出现故障时如何处理场景。现在看来 Publish 调用无限期等待。控制这些行为会很好。我们应该依赖取消令牌吗?超时实现可能会更好。

您可以将 CancellationToken 传递给 Publish。如果取消,将抛出 OperationCanceledException。如果你想使用超时,你可以创建一个CancellationTokenSource带有超时的

using var source = new CancellationTokenSource(TimeSpan.FromSeconds(30));

await bus.Publish(message, source.Token);