AWS强化了无服务器服务Lambda的扩展速度,每个同步调用的Lambda函数现在每10秒可以扩展1,000个并行执行,直到所有函数的并行执行总数达到账户上限为止,官方提到,这扩展速度是过去的12倍。即日起到12月中旬,除了中国和GovCloud之外,所有AWS地区的Lambda函数都会陆续默认激活这项扩展更新。
Lambda服务对不可预测流量的应用程序,提供了一个简单快速的解决方案,用户不需要进行复杂配置,即可实现按需扩展。不过,在AWS这项扩展更新之前,Lambda的规模扩展在最初第1分钟,只能扩展500到3,000个并行执行,接着之后以每分钟500个并行执行的速度扩展,直到账户上限。
由于Lambda扩展限制是由同一账户和区域中所有函数共享,在Lambda扩展速度受限的情况下,当某个函数接收到突发流量,可能会排挤同一账户中其他函数的吞吐量,进而影响其他函数的并行性。
为了解决这个问题,AWS对Lambda的扩展能力进行改进,特别有利于新闻网站和网络商店等这类可能遭遇突发流量的应用。这项改进使这些应用能够比以往更快达到所需的并行处理能力。现在账户中的每个函数都可以独立扩展,且用户不需要进行任何额外配置,就能使扩展速度达到过去的12倍。
除了直接使用Lambda服务的用户可以获得这项更新的好处之外,使用Amazon Athena和Amazon Redshift服务,并结合基于Lambda的程序化功能纯量用户定义函数(Scalar User-Defined Function,UDF),进行数据转换的用户,也将受益于AWS Lambda的扩展改进。
官方解释,这些服务通过批处理,将数据分块传递给Lambda,由于会同时调用多个平行函数,因此现在Lambda更强的并行扩展行为,将能够支持迅速扩展并满足SLA要求。