Firebase CRUD对生产应用的限制

时间:2017-03-06 02:24:18

标签: firebase firebase-realtime-database

生产应用的Firebase CRUD操作限制

我刚刚阅读了Firebase Pricing页面,无法找到有关与firebase交互的物理限制的信息。

例如......

在我需要更改计划或收到错误之前,我可以对我的数据库同时进行多少次“GET(或SET ...等)请求”?

// Code example: 
// What happens if 1 million user call this at the same time
this.af.database.object('/items')

在发生意外情况或我需要升级计划之前,我可以每秒(或分钟或小时)发出多少请求?

// Code example: 
// What happens in the following bad code
for (var i = 0; i < 10000000; i++) {
    firebase.database().ref().update(updates)...
}

问题出现在我面前,因为我正在实施一些搜索方法。我可以用两种方式做到这一点

  1. 下载所需的分支并在客户端进行过滤
  2. 在每个键击中查询firebase路径(更多请求会导致更多成本???)

2 个答案:

答案 0 :(得分:2)

如前所述,根据常见问题解答,每个数据库可以同时拥有100,000个连接。如果您需要更多,您可以使用他们的联系功能,您将获得个人帮助(他们可能需要在多台服务器上对您的数据库进行分片)。

至于你的循环。此外,根据Firebase常见问题解答,每秒大约有1000个小写入限制。没有提及对读取的任何限制。

就整个搜索用例而言。在Firebase查询中,除非您正在查找以某个子字符串开头的值,否则搜索某些子字符串(与SQL LIKE查询相当,假设您想要的是这样)是不可能的。如果您想要更好的搜索功能,我建议您查看Firebase的搜索API。我已经看过ElasticSearch有过几次与此相关的内容,但是我从未使用它,所以你不得不做一些研究。

希望这有帮助。

以下是相应的链接:

Firebase Database limits

Firebase Simultaneous connections

Firebase LIKE query

答案 1 :(得分:0)

据我所知,firebase-client打开了与firebase数据库的套接字连接。谷歌表示这种连接的限制是10K同时连接,所以如果你的项目超过了那个,那么打开一个支持火车底座的票,他们将负责限制。希望能回答你的问题。