У меня бесконечный спор с моим менеджером об использовании AWS Lambda. Я хотел бы получить помощь от одного из вас, ребята.
Я пока не решаюсь использовать бессерверную архитектуру для проектов производственного уровня. Во-первых, тестирование того, что я создаю в локальной установке, занимает немного времени. Даже если мы можем протестировать код с помощью модульного тестирования, мы не можем исключить возможность ошибки имитируемых объектов запроса и ответа. Тот факт, что я не могу вызвать лямбда-выражение в моей локальной настройке, очень утомляет меня, когда я тестирую написанный на лямбда-выражении API в процессе разработки. Во-вторых, насколько мне известно, пока нет обещанного SLA для AWS Lambda по его доступности и надежности. Это просто заставляет меня колебаться, принимая Lambda для создания RESTful API.
Итак, теперь я использую Lambda только в том случае, когда нужно перехватывать события, запускаемые AWS. Например, сделать что-то после того, как пользователь загрузил изображение своего профиля в корзину S3, или сделать что-то после того, как пользователь зарегистрировался через Cognito.
Однако мой менеджер ожидает, что мой API Node.js будет сочетаться с AWS Lambda для одного проекта. С моей точки зрения это совершенно не имеет смысла. Как только мы настроим Node API на инстансах EC2, я думаю, будет более продуктивно подумать о настройке автоматического масштабирования или о том, как использовать все ресурсы, работающие на текущих EC2. Но мой менеджер настаивает, чтобы я настроил и Node API, и Lambda API вместе. Например, сервисы A и B будут обслуживаться Node API, а сервисы C, D и E — AWS Lambdas.
Я пробовал это раньше, но это вызвало у меня много путаницы. Я чувствую, что при создании API лучше выбрать Node API или AWS Lambda API, а не смешивать их вместе.
Я не хочу сказать, что мой менеджер полностью лжив, и я прав. Я хочу просто иметь четкий ответ в этом случае. Буду очень признателен за любые комментарии и ответы по этой ситуации.
lambda-local
или реальная лямбда, которую легко проверить с помощью aws-cli и/ или консоль. Я использую небольшой скрипт, который выполняет zip/загрузку/вызов с помощью cli для тестирования на реальной Lambda во время разработки. Не уверен, что вы говорите, здесь. - person Michael - sqlbot   schedule 14.09.2017lambda-local
, лямбда-функция в этом случае все еще в конечном счете является функцией Javascript, которую можно вызвать с помощью примера события (которое вы можете извлечь из примера лямбда-функции) и имитировать обратный вызов, если вы того пожелаете. Существует множество способов «вызвать» лямбду локально, даже без каких-либо дополнительных инструментов. - person purdoo   schedule 15.09.2017