我正在使用AWS和SES通过使用NodeJ的lambda函数发送电子邮件和Sms,我需要进行1k或500多个REST API调用,平均调用需要3秒才能执行单个lambda函数请求,因此我需要处理多个请求在单个请求中,这样我们就可以节省生成每一个lambda触发帐单的费用。
AWS SQS接收消息限制为接收1到10条消息 SQS Limit Number of message
我的问题是,一旦AWS lambda函数触发,我们如何继续处理多条消息,以便节省账单,因为如果我为1k执行此操作,则每个API请求创建一个MySQL连接,它将创建1k mysql连接,并在执行时崩溃MySQL
答案 0 :(得分:0)
如果我为1k执行此操作,则每个API请求创建一个MySQL连接,它会创建1k mysql连接,并在执行时使MySQL崩溃
通常采用两种方法。
Execution context reuse。您打开了
Amazon RDS Proxy。代理“允许应用程序池化并共享与数据库建立的连接,从而提高数据库效率和应用程序可伸缩性”。
Appart因此,RDS可以处理的连接数超过1000。列出连接数的上限:
答案 1 :(得分:0)
我认为这是一个cloudwatch scheduled event,例如每10分钟触发一次lambda,并处理SQS池中的所有内容,而不是在它收到消息时触发它。