首页 > 解决方案 > Firebase,客户端服务器端与云功能服务器端

问题描述

假设有一个聊天应用程序需要在文档总数变为 5 时删除聊天消息文档。是的,我在指南中看到了这个示例

但我可以在 Android 的客户端服务器端执行此操作吗?(不是云功能)像这样

db.collection("chat").orderBy("something").get(){
  if(task.getResult().getDocuments().size()>5){
    db.collection("blahblah").document("blahblah").delete()....
  }
 }

这有什么缺点吗?如果我不在云功能服务器端做这些事情

谢谢(我也看到了与这个问题相似的问题,但这不是我的情况)

标签: firebasegoogle-cloud-platformgoogle-cloud-firestoregoogle-cloud-functions

解决方案


缺点是您正在让客户端应用程序完成工作,而您可以在 Cloud Functions 中更有效地完成工作。用户通过下载“聊天”中的所有文档,然后删除每个文档(需要与服务器进行更多往返)来支付其数据计划的费用。当然,您可以让客户完成这项工作,但您是否希望他们为数据使用和速度付费?如果其他客户也都在尝试做同样的事情怎么办?

另请参阅我的博客:我应该直接查询我的 Firebase 数据库还是使用 Cloud Functions?


推荐阅读