[英]Can't i renew the lock after the lock duration has expired ? Using Azure Service Bus Topic
[英]How to renew the lock after the lock duration has expired? Using Azure Service Bus Session Queue
當前,我通過將30秒配置為鎖定持續時間來使用Azure Service Bus會話隊列。
例如,我有一個會話有3條消息
在處理第一條消息要花費更多時間的同時,此后我要調用CompleteAsync()從隊列中刪除該消息。 但是每當我執行CompleteAsync()時,我都會得到SessionLockLostException。
await session.CompleteAsync(message.SystemProperties.LockToken);
我想在鎖過期時續訂鎖。
我遵循了本文檔,但是沒有獲得有關續訂鎖定令牌的任何示例。
我想在鎖過期時續訂鎖。
不可能。 鎖令牌過期后,經紀人將認為它已解鎖並服務於其他消費者。 相反,您應該查看配置和設計方法。 如果您收到的消息可能需要更長的處理時間,請不要使用30秒鍾的MaxLockDuration
來加快處理時間。 如果5分鍾還不夠,請查看在鎖定時間到期之前手動延長鎖定時間,或者如果使用內置消息泵,則配置自動更新鎖定的最長時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.