1.7.5 重新驱动 Message
优质
小牛编辑
133浏览
2023-12-01
重新驱动Message的功能需要与高级队列功能死信队列(Dead Letter Queue)配合使用。
当用户检测出接收到的某些消息是无效的消息后, 不想再次接收到这些消息但是也不想删除这些消息, 并且这些消息的接收次数还未达到重新驱动策略设置的接收次数时, 用户可选择主动将这些消息发送到死信队列中以便后续分析。
将某条消息发送到死信队列
方法参数DeadMessageRequest
queueName : String : required
这个消息接收自的Queue名称。 系统默认每个Queue只有一个重新驱动策略,所以无需指定死信队列的名称
receiptHandle : String : required
需发送到死信队列的message的receiptHandle
方法返回void
批量将消息发送到死信队列 此操作不具有原子性,可能部分message成功删除,部分失败
方法参数DeadMessageBatchRequest
queueName : String : required
这个消息接收自的Queue名称。 系统默认每个Queue只有一个重新驱动策略,所以无需指定死信队列的名称
deadMessageBatchRequestEntryList : List< DeadMessageBatchRequestEntry > : required
需要发送到死信队列的message列表 DeadMessageBatchRequestEntry字段包括:
- receiptHandle : String : required
方法返回DeadMessageBatchResponse
successful : List< String >
成功的message的receiptHandle列表
failed : List< MessageBatchErrorEntry >
失败的message的receiptHandle列表及对应异常 MessageBatchErrorEntry类型的具体内容可参见sendMessageBatch()
注: 死信队列不可使用deadMessage, deadMessageBatch。