我正在尝试从同一个 session 同时处理多个消息,并希望保证 FIFO,它仅适用于 ServiceBusSessionProcessorOptions 上的处理器 MaxConcurrentCallsPerSession = 1。
当我尝试 MaxConcurrentCallsPerSession > 1 时,我的消息处理程序从 session 中接收任何没有顺序的消息。
那么,如果我想保证 FIFO 排序处理 session ,它是否仅适用于串行处理?
最佳答案
您无法按特定顺序处理消息并同时处理许多消息。
即使您按顺序从队列中读取消息,也无法控制每条消息的处理时间。如果您同时读取消息,则每条消息的最终处理时间将显得是随机的。
关于Azure 服务总线 - MaxConcurrentCalls PerSession > 1 不保证 session 的 FIFO 处理队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67704703/