预留并发与限流
预留并发(Reserved concurrency)为某个 Lambda 函数同时运行的实例数量设置了硬性上限。将预留并发设为 5 时,Lambda 保证这 5 个并发槽始终为您的函数保留——但这也意味着第 6 个并发请求会被限流。
当您的函数会写入下游资源(如只能处理有限连接数的数据库)时,这很有用。如果没有预留并发,突发流量可能会让数据库一下子承受数百个并行的 Lambda 执行而不堪重负。
需要权衡的是:预留的并发槽会从您账号的并发总配额中扣除(默认 1,000)。如果把某个函数的预留并发设为 100,那么账号中其他所有函数只剩下 900 的并发可用。
当一个预留并发为 5 的函数收到第 6 个并发请求时,会发生什么?
本练习是课程的一部分
