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())
受益。