如何在 AWS lambda 处理程序中使用可执行文件?

How to use executable file within AWS lambda handler?

我想在 AWS lambda 处理函数中使用可执行文件。 这是我的处理程序函数,我想在其中使用可执行文件

func handler(){
    cmd := exec.Command("./balance", "GetBalance", id)
    cmd.Dir = "/Users/xxxx/go/src/getBalance"
    output, err := cmd.Output()
}

我想在此处理程序中使用上述命令的输出。可以使用吗?如果可能,我是否需要压缩两个可执行文件?或者有没有其他方法可以在处理程序中使用可执行文件?

遗憾的是,您将无法写入/Users/xxxx/go/src/getBalance。在 lambda 中,您只能访问 /tmp.

此外,如果您将 balance 文件与您的部署包捆绑在一起,它将与您的函数代码一起存储在 /var/task 中。

编辑:

根据新评论,要完成解决方案还需要删除 cmd.Dir 并为 linux 重新编译 balance