gpt4 book ai didi

go - 是否可以在单个 Go 二进制文件中使用多个 lambda 函数?

转载 作者:IT王子 更新时间:2023-10-29 00:43:26 25 4
gpt4 key购买 nike

我正在 AWS lambda 上试验 Go,我发现每个函数都需要上传一个二进制文件才能执行。

我的问题是,是否有可能有一个二进制文件可以有两个不同的 Handler 函数,可以由两个不同的 lambda 函数加载。

例如

func Handler(request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
fmt.Println("Received body in Handler 1: ", request.Body)

return events.APIGatewayProxyResponse{Body: request.Body, StatusCode: 200}, nil
}
func Handler1(request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
fmt.Println("Received body in Handler 2: ", request.Body)

return events.APIGatewayProxyResponse{Body: request.Body, StatusCode: 200}, nil
}

func EndPoint1() {
lambda.Start(Handler)
}
func EndPoint2() {
lambda.Start(Handler1)
}

并在 main 中调用 EndPoints 以注册 EndPoints 并且相同的二进制文件将被上传到两个函数 MyFunction1MyFunction2

我知道有两个不同的二进制文件很好,因为它减少了每个函数的负载/大小。

但这只是一个实验。

提前致谢:)

最佳答案

我认为这是不可能的,因为 Lambda 控制台说处理程序是可执行文件的名称:

Handler: The executable file name value. For example, "myHandler" would call the main function in the package “main” of the myHandler executable program.

因此一个可执行文件无法承载两个不同的处理程序。

关于go - 是否可以在单个 Go 二进制文件中使用多个 lambda 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49420945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com