Время ожидания AWS SAM CLI истекло

Я создаю в AWS lambda обработчик, который возвращает файл для моего одностраничного приложения (SPA). Функция работает быстро (пара мс). Но все равно мне приходится запускать ее несколько раз, почти одновременно, и затем они отключаются. Мой тайм-аут 60 секунд. Я думаю, что это как-то связано с докером, но я не уверен. Есть ли что-то, что я могу сделать?

Вот мой код:pastebin.com/TdqAu3Gx! Даже с другими функциями требуется гораздо больше времени для получения ответа по сравнению со временем выполнения.

РЕДАКТИРОВАТЬ:

Через некоторое время я опубликовал интерфейс на Netlify. Но после выполнения некоторых функций я столкнулся с той же ошибкой. Код fowoling работает в локальном aws sam.

package main

import (
    "fmt"

    "github.com/aws/aws-lambda-go/events"

    "github.com/aws/aws-lambda-go/lambda"
)

type MyReq struct {
    Username string `json:"username"`
}

func handler(m events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
    // log.Println(m.Username)

    fmt.Println("\n\n", m.Body, "\n\n")
    return events.APIGatewayProxyResponse{
        Body: m.Body,
    }, nil
}
func main() {
    lambda.Start(handler)
}

Но не работает, в реале была лямбда. (Это работает, но я получаю полный json, так как текст для заголовков exaple не задан в ответе, но я могу видеть их как текст в теле). Если я изменю events.APIGatewayProxyResponse а также events.APIGatewayProxyRequest в MyRequest и строка соответственно это работает в лямбде, но таймауты в sam local. В моем template.json под Resources Я имею:

"TestFunction": {
        "Type": "AWS::Serverless::Function",
        "Properties": {
            "CodeUri": "MY_BUCKET",
            "Handler": "testf",
            "Role": "My Lambda role",
            "Events": {
                "RegisterEvent": {
                    "Type": "Api",
                    "Properties": {
                        "Path": "/testf",
                        "Method": "POST"
                    }
                }
            }
        }
    }

Как заставить код работать как на AWS Lambda, так и на SAM Local? Если у кого-то есть рабочий шаблон приложения sam, который работает как на SAM, так и на AWS и может открыть его с открытым исходным кодом, я был бы очень благодарен.

0 ответов

Другие вопросы по тегам