AWS Lambda环境中的自定义软件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS Lambda环境中的自定义软件相关的知识,希望对你有一定的参考价值。
我想在AWS Lambda中运行Python包装器。 Python包装器需要通过命令行调用外部程序。我使用Python子进程包来调用外部程序。调用的程序是embulk
- 一个用于批量传输的java应用程序。 (http://www.embulk.org/docs/)
在我的本地Mac上,我安装了embulk
,Python包装器成功调用embulk
将Amazon S3数据移动到我们的云数据仓库(在TreasureData上)。为了使这个Python包装器能够在Lambda上运行,我需要在AWS Lambda环境中安装embulk
。有可能吗?或者我是否需要购买EC2实例才能使其正常工作?
要使Java在Lambda环境中运行,需要使用Lambda代码打包整个JDK。您必须确保它与他们使用的AWS'x86 Linux发行版完全匹配。
更好的方法是完全用Java实现代码。创建自己的Java Lambda类,调用Embulk现有的主类。
如果您对Java不熟悉,可以编写少量Java来实现Lambda Handler,然后调用Jython脚本(Python-in-Java),然后调用Embulk的主要方法。
作为Python开发人员,如果您已经使用面向对象的Python,那么您应该发现Java相对容易理解。
以上是关于AWS Lambda环境中的自定义软件的主要内容,如果未能解决你的问题,请参考以下文章
aws 如何从生产环境中的 lambda 函数访问 ECS 服务
如何在 AWS Lambda 中使用 Python 自定义包