【问题标题】:Firebase, Client Server-Side vs Cloud Functions Server-SideFirebase,客户端服务器端与云功能服务器端
【发布时间】:2019-06-16 03:11:14
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: firebase google-cloud-platform google-cloud-firestore google-cloud-functions


    【解决方案1】:

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

    另见我的博客:Should I query my Firebase database directly or use Cloud Functions?

    【讨论】:

    • 虽然在这种情况下我也倾向于删除 Cloud Functions 中的子节点,但绝对值得考虑离线行为。客户端方法即使在客户端离线时也可以工作,而 Cloud Functions 只会在用户在线时触发。
    • 这正是我想知道的,非常感谢!两个!
    猜你喜欢
    • 2019-03-18
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 2012-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多