首页 > 解决方案 > Firebase Cloud Functions HTTP-Req-Res 与 REST API 的实时数据库

问题描述

我正在为 Firebase 实时数据库上的应用程序设计一个 REST API。从成本和效率的角度来看,我想知道这两种选择中的哪一种对我更好:

  1. 客户端直接在我的数据库上写入请求,云函数的 onWrite 被触发并在客户端读取的适当节点上写入响应。

  2. 客户端发送带有请求的 HTTP 请求,Firebase Cloud Functions 的 HTTP 触发器将适当的响应发送回客户端。

我预计每月会收到大约 300 000 个 API 请求。

标签: firebasefirebase-realtime-databasegoogle-cloud-functions

解决方案


费用

很难知道哪个更好,因为这取决于您的具体用途。您可以尝试使用 firebase 计算器https://firebase.google.com/pricing#blaze-calculator进行计算但从简单的 POV 看来,选项 2 似乎更好,因为在这两个选项中,云函数执行相同数量的调用,而在您还必须为数据库付费的第一个选项

效率

从理论上讲,选项 2 似乎会更有效,因为它为每个事务使用的组件更少,而在这两个选项中,云功能将具有相对相同的工作量。实际上,只有经过测试,您才会知道。

一般来说

选项 2 似乎是正确的方法。在此选项中,您以创建者为其设计的正确方式使用 firebase。在选项 1 中,您正在以非平凡的方式使用 firebase,这可能会导致一些错误,并可能导致您的系统更加复杂。在大多数情况下,简单会获胜。特别是如果不止一个程序员将​​在这个系统上工作。


推荐阅读