首页 > 解决方案 > firebase 的云功能被触发太多次

问题描述

我们有一个 android 应用程序,它每 30 秒收集一次用户的位置并将其写入 Firebase 实时数据库。如果用户的位置 15 分钟没有改变,我想在 firebase 上执行云功能。

初始方法:让 android 应用每 15 分钟进行一次 HTTP 调用以调用云函数。

该方法的问题:有 1000 个活跃用户,预计将增长到 10,000 这种方法将导致每天触发 960,000(1000 个用户 * 每小时 4 个请求 * 24 小时)次。

位置的目的是,如果 15 分钟后没有改变,云功能会向 Web 客户端发送通知。手机在低连接性下运行并且是低端设备,因此让手机触发通知是不可行的。

目标是最小化要触发的云函数的数量。

什么是正确的方法,可以最大限度地减少云函数调用的数量?

标签: androidfirebasegoogle-cloud-functions

解决方案


您要求的解决方案取决于位置数据使用的上下文。

  • 如果只是统计,可以将位置数据缓存在本地,不定时推送到云端。
  • 如果位置数据用于提供基于的服务,则由您根据实现的算法来决定。

推荐阅读