1
批处理Rebus消息(使用Azure Servicebus)是否可能? 原因是我们要发送很多消息来保存日志事件并想要批量增加。Rebus是否支持批量发送
批处理Rebus消息(使用Azure Servicebus)是否可能? 原因是我们要发送很多消息来保存日志事件并想要批量增加。Rebus是否支持批量发送
尽管旧版本的Rebus确实有一个批量API用于在一个传输消息中包装多个逻辑消息,但是这种功能在很多地方增加了复杂性的代价,结果带来很少的优势。
如果你想发送消息的批次,我建议您只需编写自己的消息组的消息,像
public class BatchOfLogEvents
{
public BatchOfLogEvents(IEnumerable<LogEvent> logEvents)
{
LogEvents = logEvents.ToArray();
}
public IReadOnlyCollection<LogEvent> LogEvents { get; }
}
,然后您发送,并在另一端为它创建一个处理程序。
关于Azure的服务总线更新:请记住,Azure的服务总线有256 kB maximum message size (or 1MB if you're on Premium)。
另外:如果你还没有这样做的话,你也许可以从启用消息的gzip压缩在你的卤面配置会
.Options(o => o.EnableCompression())
受益。