Comments 4
Спасибо за статью, хочу покритиковать данный подход. К сожалению тут есть довольно много подоводный камней.
Во-первых вопрос холодных стартов. Интересно услышать какие у вас получаются цифры-но с нестом и постгресом он может быть >1с(очень зависит от конфигов), что для апи часто неприемлимо. Это стоит учитывать.
Во-вторых при большой нагрузке у сервиса будут проблемы. Для каждого новой лямбды будет создаваться отдельное соедиенение к базе. Если у вас может быть >1000 рпс то это будет большая проблема. Я бы рекомендовал сделать нагрзуочное тестирование и посмотреть результат.
В-третьих вопрос апи гейтвея-это относительно дорогой сервис у амазона. Обычно его используют т.к. он добавляет удобство, но в данном случае он используется просто для проброса запрос в js.
Есть еще потенциальные проблемы, но тут надо тестить, в особоенности поведение конкретной постгресовской либы при фризе лямбды.
Если вы не очень знакомы с нюансами то этот же сервис, практически с таким же кодом на EC2/fargate может оказаться значительно дешевле по деньгам, с большей производительностью и часто проще масштабируемым. Это незначит что подход нерабочий, но следует дважды подумать перед тем как выбрать этот подход.
Абсолютно согласен. На счет того когда стоит использовать лямбду, а когда нет можно написать отдельную статью. Но если использовать в проектах где первую секунду можно и подождать (админка например). И где количество запросов не велико. Можно не выходить за free tier AWS и получить полностью бесплатный хостинг
Косвенный вопрос с помощью какой программы и с какими настройками вы смогли создать такиг гифки ?
ps terraform это настоящий ад хрен пойми какого объема конфигураций... я думал такое только в ci cd системах аткое есть ...
NestJS + GraphQL + Lambda