gpt4 book ai didi

amazon-web-services - 脚本运行后,SQS 消息永远不会被删除/删除

转载 作者:行者123 更新时间:2023-12-02 01:44:43 25 4
gpt4 key购买 nike

我遇到的问题是我的 SQS 消息永远不会从 SQS 队列中删除。仅当生命周期结束(即 4 天)时,它们才会被删除。

总结一下该应用程序:

  • 发送URL到SQS队列等待抓取

  • 向抓取数据并将其存储在数据库中的 Elastic Beanstalk 应用程序发送消息

该脚本似乎正在工作,因为它确实收到了消息,并且确实成功抓取了该消息并将数据成功存储在数据库中。唯一的问题是消息仍保留在队列中,停留在“消息可用”状态。

因此,如果我向队列加载 800 条消息,它将在大约 800 条消息中停留 4 天,然后由于生命周期值,它们将立即被删除。似乎有一些消息被删除,因为数量略有变化,但绝大多数消息从未从队列中删除。

所以问题:

  • SQS 不是应该在脚本发送和接收消息后立即将其删除吗?

  • 我可以在脚本本身中手动删除当前消息吗?据我所知,该消息仅以一种方式发送。从 SQS -> 应用程序。所以据我所知,我不能做SQS <-> App。

有什么想法吗?

最佳答案

A web application in a worker environment tier should only listen onthe local host. When the web application in the worker environmenttier returns a 200 OK response to acknowledge that it has received andsuccessfully processed the request, the daemon sends a DeleteMessagecall to the SQS queue so that the message will be deleted from thequeue. (SQS automatically deletes messages that have been in a queuefor longer than the configured RetentionPeriod.) If the applicationreturns any response other than 200 OK or there is no response withinthe configured InactivityTimeout period, SQS once again makes themessage visible in the queue and available for another attempt atprocessing.

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features-managing-env-tiers.html

所以我想这回答了我的问题。有些消息不返回 HTTP 200,然后陷入无限循环。

关于amazon-web-services - 脚本运行后,SQS 消息永远不会被删除/删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24259010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com