我已经看到AWS最近发布了AWS SAM Local无服务器应用程序。我发现LocalStack非常相似,我现在用它来运行测试,并且看不到很多差异,因为它们都支持几乎相同的服务。这两者之间是否有任何关键差异?
答案 0 :(得分:3)
SAM Local基本上只是用于在本地测试您的Lambda函数.-
没有提供其他本地服务,例如,如果您要测试S3存储桶操作,则需要连接到现有的AWS账户。
答案 1 :(得分:2)
我认为现在唯一不同的是来自AWS本身,它将是AWS推出的最新和最新的功能/服务产品,即使进入BETA,SAM也需要一些时间。赶上当地人。
Localstack还有两种版本 - Base和Pro,价格合理。因此,如果给出选择,我现在就开始探索SAM本地。
答案 2 :(得分:0)
LocalStack 可让您模拟 AWS 服务,例如拥有一个虚假的 S3 存储桶
SAM Local 让您可以在本地运行真正的 AWS 无服务器服务,例如 Lambda
因此,如果您正在编写 Lambda 并希望在本地测试/调试它,请在 SAM Local 中运行它,并在 LocalStack 上调用其他模拟服务
例如,您的“真实”Lambda 调用 S3 和 Dynamo,然后您将模拟 S3 和 Dynamo
如果你想测试一个调用一堆不同 AWS 服务的 Bash 脚本,那么使用 LocalStack 来模拟所有服务(包括模拟 Lambda)