[英]Does “SentTimestamp” attribute of AWS SQS message change after visibility timeout?
在使用AWS SQS時,從隊列接收到消息后,消息的“ SentTimestamp ”屬性是否發生更改,但是在可見性超時到期后沒有刪除並返回到隊列中?
不,因為SentTimestamp
特別描述了消息首次發送到隊列的時間,所以這種行為是不希望的。
描述可見性超時的該文檔提供了一些見解:
組件收到消息后,消息仍立即在隊列中。 但是,您不希望系統中的其他組件再次接收和處理消息。 因此,Amazon SQS使用可見性超時來阻止它們,在這段時間內,Amazon SQS阻止其他消耗組件接收和處理該消息。
這里重要的一點是, 消息永遠不會真正離開隊列 ,只是對接收消息的其他客戶端隱藏。 因此,消息內容(如MessageID和SentTimeout)不會更改。 另一方面,每次接收到該消息時,與接收消息有關的事情都會改變,例如RecieptHandle和Receive Count。
您可以通過以下方式從AWS Web控制台進行自我驗證:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.