如何在AWS Lambda上运行使用npm的Java应用

时间:2019-06-07 01:57:53

标签: java node.js amazon-web-services aws-lambda

我有一个用Spring Boot编写的AWS Lambda。 Spring Boot代码利用Process执行npm命令。

这在服务器上运行时非常好,因为我可以全局安装npm软件包。

使它在lambda中工作的最佳方法是什么?

我玩弄https://github.com/awslabs/aws-lambda-container-image-converter,试图创建一个自定义运行时环境,该环境同时包含我需要的Java和npm软件包。但是由于缺乏理解,我无法走得很远。我什至可以确定这是否是正确的工具。

那么,如何在单个lambda中同时运行Java应用程序和执行npm命令?

1 个答案:

答案 0 :(得分:1)

我相信只有两种选择:

  • 使用带有npm二进制文件的AWS图层。如前所述,您可以使用自定义运行时,也可以在现有的lambda函数中添加新层。

  • 与nodejs运行时同步调用另一个lambda函数,并捕获响应。检查Invoke端点的Java SDK方法

根据您的特定问题,还有第三个选项可以使用nexe或类似的库将nodejs库转换为可执行二进制文件