Всем привет)
Подскажите пожалуйста, есть ли какой то разумный способ использовать nestjs в firebase functions? Мне почему то такая связка не попадается в туториалах.
Если есть ссылка на пример или туториал, вообще супер)
Да, был опыт с функциями и нестом. Запустить можно, в целом, работабельно. Предостережения:
1. У функций есть ограничение на размер файлов (~10мб)
2. Стандартный декоратор на загрузку файлов на функциях не сработает, т.к. Гугл форм дату не передаёт как бинарник, а парсит в строку (если нужен пример мидлвейра на парсинг форм даты в функциях, могу дать)
3. любые подписки или сокеты не будут работать, для классического веб апи подойдёт
4. Гугл не гарантирует, что функция будет долго жить, в среднем, максимум живёт около 9 минут, поэтому длительные операции - не про клауд функции
5. Функции - стейтлесс, поэтому учтите, если хотите хранить какое-то состояние в памяти
В остальном - вариант рабочий, но медленный. Лучше на app engine - масштабируемость та же, но скорость запуска выше и апп запускается почти как на стандартном сервере
П.с. если в будущем планируется переход на что-то более нормальное, а не клауд функции, то тут имеет смысл брать нест. С другой стороны - имеет смысл и собрать свой инструментарий типа express/knexjs/joi и т.д. т.к. это решение будет более гибким, но долгим в разработке. И ещё один минус использования Неста в целом - используются Легаси декораторы от тайпскрипта, которые отличаются от тех, что в пропосал от TC39