我有一个触发 Lambda 函数的 DynamoDB 流。我注意到对 DynamoDB 表的一千次写入突发可能需要几分钟(我见过的最长是 30 分钟)才能全部由 Lambda 处理。批量大小为 3 的每个 Lambda 调用的平均持续时间约为 2 秒。这些 Lambda 执行 I/O 繁重的任务,因此小批量和更多的并行调用是有利的。但是,这些 Lambda 的并行性与 DynamoDB Stream 分片的数量挂钩,但我找不到扩展分片数量的方法。
除了使用更大的批处理大小和更优化的代码之外,还有什么方法可以增加这些 Lambda 的吞吐量?