检查 aws sqs 中的传入消息

Suh*_*pta 1 amazon-sqs amazon-web-services node.js

我的函数如何持续检查传入消息?收到消息后,以下函数退出。考虑到已为队列启用了长轮询,如何持续检查新消息?

function checkMessage(){
    var params = {
                QueueUrl : Constant.QUEUE_URL,
                VisibilityTimeout: 0,
                WaitTimeSeconds: 0
            }
    sqs.receiveMessage(params,(err,data) => {
        if(data){
            console.log("%o",data);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

Joh*_*ein 5

您的函数需要不断轮询 Amazon SQS。

如果没有可用消息,长轮询会将响应延迟最多 20 秒。如果在此期间有消息可用,它将立即返回。如果 20 秒后没有消息,则返回而不提供消息。

因此,您的函数需要再次轮询 SQS(可能在此期间执行其他操作)。