这可能是由于Lambda代码中的错误导致的,例如函数超时或内存不足等问题。为了调试这个问题,可以查看Lambda函数的CloudWatch日志,以确定执行期间出现了什么错误。此外,可能需要检查SQS队列的设置,确保消息在正确的时间内被删除。
以下是一个处理AWS SQS和Lambda的例子,它可以定期删除队列中的消息以保持队列干净:
import boto3
sqs = boto3.resource('sqs')
queue = sqs.get_queue_by_name(QueueName='my_queue')
def lambda_handler(event, context):
for message in queue.receive_messages():
# Handle message
message.delete()