Firebase可扩展性

6
我希望开发一个iOS应用程序,可以找到附近的人并与他们聊天。然而,我不知道firebase如何处理大量数据。
例如:如果该应用程序有100,000个用户,并且其中很多人经常聊天、搜索附近的人,firebase是否能够处理这样数量的请求和帖子?如果不能,那么你如何使用firebase呢?这取决于我构建的结构吗?感谢每一个能够帮助我决定是否使用它的答案 :)
谢谢。
2个回答

5
虽然这是一个非常广泛的问题,但我会抓住你关于可扩展性的具体要求。Firebase是一个NoSQL数据库,它可以导入和导出JSON格式的数据库。它成为完美的后端即服务(BAAS)的关键因素之一是其处理事务的能力,或者说内置命令以几乎无麻烦的方式保存和检索数据。
不仅如此,易于集成AdMob、推送通知和远程配置等功能也增强了其完美的DNA结构。更不用忘记它的存储使用Google Cloud Bucket。所以,基础设施方面相当可靠。
查看所有功能请点击这里
Firebase已经成为一个大牌子。如果我们从受欢迎程度的角度来考虑规模,请查看以下客户: Firebase的客户 - Booking.com - Viber - Asus - Domain - Glow......还有很多其他大公司。
此外,
最近在Google I/0 2016上,Firebase的BAAS扩展受到了重点关注。您可能会对以下视频感兴趣:

最后,可扩展性是一个良好规划的结构化数据库的重要因素。祝你好运!


1
如果你计划在Firebase上开发高度可扩展的东西,那就准备好接受火烤试炼吧。大多数声称使用Firebase集成的公司通常只用它来解决一些较小的问题,而不是技术性质的问题。如果你没有谨慎,它的本质可能会咬你一口。
比如说,检索聊天消息。你要如何存储这些消息?Firebase建议你将其平铺存储。所以就这样做吧。现在,你要如何将这些消息分配给多个正在进行的聊天呢?你需要列出哪些消息属于每个聊天。但由于你的消息是平铺的,所以现在你必须为每个单独的消息进行查询。在一个大型应用程序中,每秒进行无数次数据库查询可能是危险的。为了解决这个问题,你可以将消息放置在频道本身下面,然后通过按日期排序来批量检索它们。
基本上,你会发现很多类似的问题。这是因为Firebase被设计成“简单”,而实时应用程序往往变得“复杂”。
另一个缺点是,与传统数据库相比,Firebase相当昂贵,如果你服务的客户很多,这可能会造成相当大的损失。

2
阅读Ramzi的答案后,您现在可以使用Firebase的Firestore服务,该服务允许您拥有集合和集合的集合——这意味着不再需要全部扁平化。 - Gal Bracha

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接