Облачные функции Firebase

Как вы запускаете облачные функции Firebase при загрузке файла? Недавно нам потребовалось взять регулярно обновляемые текстовые файлы и считывать их в базу данных. Вот как мы использовали Firebase для этого.

Облачные функции Firebase

Облачные функции Firebase - это механизм запуска внутреннего кода (написанного на JavaScript), который можно запускать различными способами. В этом случае мы хотели запускать функции на основе нового файла, поэтому решили использовать их в сочетании с Firebase Cloud Storage. Каждый раз, когда файл загружается, запускается наш код.

Https://firebase.google.com/docs/functions/

Выполнение

Здесь вы можете видеть, что мы ожидаем изменения в хранилище файлов. Проверяем, предназначен ли этот файл для этой облачной функции. Затем читаем файл из хранилища и вытаскиваем данные. Затем мы разбиваем его по строкам и добавляем в нашу базу данных.

Тайм-аут!

Это решение устраняет проблемы с большими наборами данных. Облачные функции Firebase допускают только до 540 секунд на функцию (по умолчанию 60 секунд). Как только мы начали использовать большие наборы данных, у нас начались таймауты.

Пытаясь решить эту проблему, мы попытались параллельно изучить выполняющиеся обещания (концепция Javascript). Несмотря на то, что параллелизм возможен, при попытке правильно обрабатывать ошибки и работать в пределах этих таймаутов оказалось, что это никогда не сработает для больших наборов данных. Firebase может планировать изменение этого поведения, но на данный момент мы советуем использовать это решение только для небольших наборов данных.

Полная история

Написание API - история мобильного разработчика

Первоначально опубликовано на www.brightec.co.uk.