![](/img/trans.png)
[英]SQL Server Service Broker For Distributed App With Conversations Stucking in State of Conversing
[英]Conversations in Sql Server Service Broker
據我了解,將進行一次會話以進行一個會話。
但是,如果我有一個會話可以獲取會話的所有消息,那么在處理這些消息時會添加更多消息。
會話結束並發送結束會話,但是隊列中還有更多會話,因此發起方不發送結束會話。
收到第一條消息的會話已完成/消失/不再進行。 Service Broker將如何處理其他消息? 他們會超時然后再參加另一個會議嗎?
它是否等待具有第一條消息的會話中的結束對話? (如果不能,那么如何保證正確的順序?)
還是(最壞的情況)這些消息從未得到處理?
我只是通過觀察就很難理解這一點,但結果卻模棱兩可,以至於我希望從認識的人那里得到答案。
分派EndDialog消息時,Service Broker確保隊列中所有未決消息都在EndDialog之前發送。 在該對話中無法再發送任何消息,但是仍然可以在目的地處處理消息。
在接收端,處理器應該繼續查找消息,直到看到EndDialog消息為止-一旦它知道可以在其結尾關閉對話,因為它知道該對話不再有消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.