我正在努力澄清Amazon的SQS Dead Letter Queue到底是做什么的。
根据http://aws.typepad.com/aws/2014/01/amazon-sqs-new-dead-letter-queue.html所述:
死信队列 - SQS队列的ARN(Amazon资源名称),将接收由消费者在最大接收次数后未能成功处理的消息。
这不更像一个Poision队列吗?关键区别在于消费者确实收到了消息。死信是指消息可能是好的,但由于服务中断无法传递。http://www.eaipatterns.com/DeadLetterChannel.html
而这听起来像是消息被成功接收多次,但处理消息失败,我理解这是毒消息队列的含义。
消息总线与队列
在普通队列的情况下,“Dead Letter Pattern”是否有不同的含义?由于SQS只是一个队列,而不是消息总线,因此它不负责传递消息。相反,它等待消息被获取(请求)。因此,传统的“Dead Letter Pattern”并不适用,因为没有消息总线试图传递消息并找不到收件人。SQS能否像消息总线一样运作?
是否有一种通过SQS设置通道和监听器的方式,而不是显式地从队列中轮询消息的方法?