Как я могу иметь непрерывную облачную функцию Firebase для непрерывного потока данных? - PullRequest
0 голосов
/ 16 ноября 2018

Мне нужно использовать API Twitter Stream для потоковой передачи данных твитов в мою облачную функцию Firebase, например:

client.stream('statuses/filter', params,  stream => {

  stream.on('data', tweet => {
    console.log(tweet);
  })

  stream.on('error', error => {
    console.log(error)
  })

})

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

Ответы [ 2 ]

0 голосов
/ 11 марта 2019

В принятом ответе предлагается запустить GCE, и, хотя он, безусловно, является правильным, я хотел бы отметить, что любой, кто интересуется облачными функциями - безсерверным решением - может найти GAE (App Engine) гораздо более жизнеспособным для потоковой передачи данных.

Наше приложение использует App Engine Standard в качестве службы приема пищи, и оно работает как средство, снимающее очарование, которое требуется GCE. Если вашему приложению требуются расширенные сетевые функции, App Engine Flexible или GKE (Kubernetes Engine) также могут быть полезны!

0 голосов
/ 16 ноября 2018

Облачные функции имеют максимальное время работы 540 секунд , как задокументировано . Вам, вероятно, придется взглянуть на экземпляр вычислительного движка из Google Cloud , где вы можете запускать код без ограничений. Или вы можете использовать Google Cloud Scheduler , чтобы каждый раз запускать свою функцию и получать новые твиты.

...