это может зависеть от того, насколько велики эти снимки и сколько их может быть кэшировано ...
, потому что это диск RAM
, и без ведения домашнего хозяйства он может работать только в течение ограниченного времени.
Всегда удалять временные файлы
Локальное дисковое хранилище во временном каталоге является файловой системой в памяти.Файлы, которые вы пишете, занимают память, доступную вашей функции, и иногда сохраняются между вызовами.Невозможность явного удаления этих файлов может в конечном итоге привести к ошибке нехватки памяти и последующему холодному запуску.
Источник: Облачные функции - Советы и рекомендации .
Там не сказано, каким именно будет жесткое ограничение - и кэширование в другом месте может не так сильно улучшить время доступа. он говорит 2048mb
за функцию, по умолчанию - в то время как можно повысить квоты с помощью IAM & admin .все зависит от того, можно ли повысить квоту на функцию для обработки кэша.
Вот пример для события .onShapshot()
:
// for a single document:
var doc = db.collection('cities').doc('SF');
// this also works for multiple documents:
// var docs = db.collection('cities').where('state', '==', 'CA');
var observer = doc.onSnapshot(docSnapshot => {
console.log(`Received doc snapshot: ${docSnapshot}`);
}, err => {
console.log(`Encountered error: ${err}`);
});
// unsubscribe, to stop listening for changes:
var unsub = db.collection('cities').onSnapshot(() => {});
unsub();
Источник: Получитьобновления в реальном времени с Cloud Firestore .
Cloud Firestore Trigger может быть другой вариант.