【问题标题】:Firebase: Is there a difference between client transactions and cloud function transactions?Firebase:客户端事务和云函数事务有区别吗?
【发布时间】:2017-08-17 07:48:37
【问题描述】:

正如here 指出的那样,我正在尝试寻找一种方法来使用 Firebase 显示热门帖子。

由于没有其他方法可以解决这个问题,我决定采用冗余:

-trendingToday
    -$date
        -$postId
            -numberOfLikes // negative number for descending order

-trendingMonth
    -$date
        -$postId
            -numberOfLikes // negative number for descending order

当用户喜欢一个帖子时,第一个 trendingToday/$date/$postId/numberOfLikes 会随着交易而减 1。然后应该有一个for-loop 来减少trendingMonth/$date/$postId/numberOfLikes 中的数字,其中$date 在接下来的30 天内循环。这也应该通过事务来执行。

现在的问题是:我是在客户端上执行此逻辑更好,还是最好使用云功能解决此问题?

【问题讨论】:

    标签: firebase firebase-realtime-database google-cloud-functions


    【解决方案1】:

    如果您选择在客户端上执行大量工作,那么如果用户终止应用、失去连接或其他中断,工作可能无法全部完成。

    云函数在执行过程中不太可能被打断,因此你的所有事务更有可能一致地完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-10
      • 1970-01-01
      • 1970-01-01
      • 2021-09-22
      • 1970-01-01
      • 2011-09-23
      • 1970-01-01
      相关资源
      最近更新 更多