如何在所有aws lambda函数中重用代码?

时间:2017-01-10 05:27:20

标签: java amazon-web-services amazon-s3 aws-lambda

编程语言 - Java

我们有10种不同的aws lambda函数。这里我们需要为所有10个lambda函数提供相同的功能。而不是重复相同的功能10次。我们可以创建通用功能和打包作为框架jar,并在每个aws lambda函数中调用它们。

我的问题是在aws中如何以及在何处部署jar文件以及如何在所有lambda函数中包含该jar文件以及如何在aws lambda函数中调用特定函数。

3 个答案:

答案 0 :(得分:0)

我的方法是;你只能制作一个lambda函数,并在它前面放置一个API网关。使用API​​ Gateway中的参数,您可以解析lambda。

在示例中;

1 - 您的主要lambda处理函数正在解析"扩展"参数

2 - API网关获取并发送"扩展"参数为Lambda

3 - Lambda检查扩展名是否为xml,xmlParser()是否有效或.jar jarParser是否有效。

所以不需要制作10个lambda函数。

最佳,

答案 1 :(得分:0)

现在Lambda Layers可用,您可以使用一个图层在多个Lambda函数之间共享jar文件。

类似于Lambda函数,您使用zip文件创建图层。要共享您的自定义代码,您将需要一个如下所示的zip文件:

my-layer.zip
└ java/lib/my-custom.jar

然后,您可以在自定义层上创建Lambda函数,并像在您的环境中一样引用my-custom.jar

答案 2 :(得分:0)

如果您使用的是node.js,那么this这篇文章真的很棒,并且讲得很好。