2017-01-24 91 views

回答

0

尽管旧版本的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()) 

受益。