Firebase - 多路径更新或云功能监听器

时间:2017-04-10 13:32:02

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

在观看了相当数量的YouTube视频之后,似乎Google在更改存储在多个位置的数据时主张进行多路径更新,但是,我越是混淆了云功能,看起来他们就是甚至更多可行的选择,因为他们可以坐在后面,听取特定参考的更改,并根据需要实时推送更改。走这条路是否有意思?只是好奇为什么谷歌不推荐这个用例。

1 个答案:

答案 0 :(得分:1)

NEWER UPDATE:就在我写这篇文章时,我收到了Google对我的问题的回复。现在转向我们的应用程序方向为时已晚,但它可能对其他人有用。

  

如果您的函数没有返回值,则服务器不知道在放弃和终止它之前等待多长时间。我打算快速猜测这可能就是为什么不调用数据库调用的原因。

     

请注意,由于DatabaseReference.set()会返回一个承诺,因此您可以根据需要返回该承诺。

     

此外,您可能需要添加.catch()并记录输出以验证set()操作未失败。

     

〜<强> firebase-support@google.com

更新:我在过去一个月左右的云功能体验一直是一种爱恨交织。我们的许多非规范化数据都依赖于云函数来保持所有内容的同步。不幸的是(从一开始就是一个坏主意)我们正在处理交易/货币数据并将其存储在多个区域是不舒服的。当我们开始遇到云功能问题时,即在数据库侦听器上执行它们并非100%可靠时,我们知道Firebase至少不能用于我们的事务数据。

整体而言,这个概念非常棒。它们触发时效果非常好,但由于触发功能的一些不一致,它们对我们的用例来说不够可靠。

我们目前正在使用SQL作为交易数据,然后存储需要在Firebase中实时维护的用户数据和其他对象。到目前为止,这对我们来说非常有效。