就在最近,而且非常随机地,我已经停止接收Amazon发货时发送的sqs消息。
它是非常随机的,仅在发生此特定消息时才发生,因为当亚马逊收到订单并开始处理订单时,我才收到消息。
有没有其他人看到过此消息,以及有关如何确保不丢失任何sqs消息的任何建议?
我不知道这是否重要,因为我收到其他消息,而不是“已发送订单”消息,但这是我轮询SQS队列的方式。
def perform_poll
client = SqsPollHelp.create_sqs_client
poller = Aws::SQS::QueuePoller.new(ENV['sqs_url'], {client: client})
poller.poll(max_number_of_messages:10, idle_timeout: 1) do |messages|
messages.each do |msg|
xml_message_from_amazon = Nokogiri::XML(msg["body"])
SqsPollHelp.what_to_do_with_message(xml_message_from_amazon)
end
end
end