Как запланировать функцию Firebase, в ограниченное время - PullRequest
0 голосов
/ 25 февраля 2020

У меня есть функция firebase, которая должна запускаться каждые 1 час, но только X раз. Я запланировал это следующим образом:

functions.pubsub.schedule('every 1 hour').onRun((context) => {
    let counter = // read last counter value from db
    counter++;
    if(counter === X)
        return;
    // save counter in db

    // my job
}

Но этот метод не оптимален, потому что планировщик всегда активен, даже когда он не требуется. Вы предлагаете лучший метод для этой цели?

1 Ответ

1 голос
/ 25 февраля 2020

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...