在 firebase 上设置间隔而不是使用 cron

pup*_*pup 1 firebase firebase-realtime-database google-cloud-functions

我正在制作垃圾邮件计数器(在 Firebase 上)。我所做的是在 firebase 云函数上使用数据库触发器来增加路径 (/counter/${uid})。此路径将为每个用户保存一个整数,其他路径将具有引用它的安全规则并检查它是否超过限制。但是,我想每天清除一次计数器。

当我在 google 上搜索时,我找到了 firebase 的官方方法,通过使用另一个谷歌云服务来部署 cron 作业。但是,我想知道我是否在云函数上使用 setInterval 会起作用。这个任务只会是一行执行( admin.database().ref('/counter').set({}) 。如果由于有点问题,应该没问题。

谢谢

Dou*_*son 5

使用setInterval将不起作用,并且真的不建议这样做。您可以使用setInterval让函数保持活动一段时间,但即使函数只是在等待,您也需要为此时间付费。此外,您仍然会受到 Cloud Functions 函数超时方式的影响(默认为 60 秒,特殊配置最长为 9 分钟)。