2017-01-24 123 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()) 

受益。