极客视点
极客时间编辑部
极客时间编辑部
113243 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/05:08
登录|注册

App后端服务,你选择AWS还是Firebase?

讲述:丁婵大小:7.05M时长:05:08
你好,欢迎收听极客视点。
对于 App 的后端服务开发,你是选择 AWS 还是 Firebase。当然,并不是说 AWS 就比 Firebase 好,或 Firebase 比 AWS 好。正确的问题应该是:哪种解决方案最适合你的需求?
日前,开发人员达南杰·特里维迪(Dhananjay Trivedi)分享了自己的观点和理解,或许能帮你选择正确的服务。

Firebase 与 AWS 的服务异同点

二者有很多核心功能是相似的,包括身份验证、推送通知、存储、托管、分析。因此,你可以用这些平台轻松部署无服务器解决方案。
而 Firebase 和 AWS 又各有优势。AWS 用于开发、测试和生产的不同环境更加“优雅”,它还为持续部署提供另一种优雅的解决方案。使用 AWS,你可以任意选择后端数据库的类型。另外,AWS 提供应用程序可能需要的所有服务。因此,AWS 是一个云解决方案,你可以完全依赖它来满足所有需求。
如果你选择 Firebase,它提供两种专用数据库服务:Cloud Firestore 和 Realtime Database。这两个数据库都是 NoSQL 数据库,因此,你在部署数据驱动的应用程序时不必太操心数据库设置和查询编写。
同时,得益于 Firebase 云函数,你可以创建云函数并通过 URL 设置触发器,以便将侦听器写入数据库。这些函数类似于 AWS Lambda,但是从应用程序触发一个 Lambda 需要你设置一个 API 网关并添加授权逻辑,这使得实现起来有些困难。
另外,Firebase 提供很多服务来监控和保证应用程序的质量。这些服务包括:
动态链接:将用户导航到你应用程序的正确位置,无论它是否已经安装。
远程配置:使用服务器端配置自定义并试验应用程序行为。
测试实验室:跨设备测试 App。
应用内消息传递:发送给用户参与活动。
分析:帮你规划未来的发布和用户参与策略。
ML Kit:在应用程序的前端或后端为你的解决方案添加机器学习功能。

怎样整合后端与应用程序?

此外,在集成后端与应用程序方面,二者也有很大区别。
Firebase 为 Android、iOS 和 Web 提供 SDK,作为前端开发人员,你可以轻松构建数据驱动的应用程序,而不必受制于后端技能。Firebase 还有一个 REST API,你能用它构建自己的自定义 API(根据需求)。
而 AWS 为移动开发提供一种非常好的解决方案 AppSync ,你可以把它集成到你的 Android、iOS 和 React Native 中。不过,如果你想使用 Flutter 开发前端,就必须创建自己的 API。
在你作出正确抉择前,可以考虑以下几点:
考虑解决方案的复杂性和业务需求,并考虑可伸缩性,决定是否要创建 API。
如果你希望拥有一个 API,那么就用不到 SDK 了。另外,对于较大的项目,拥有一个 API 更有意义。
如果你的解决方案很简单,并且不想在 API 上投资,那么选择提供 SDK 的服务 / 前端框架,以便能直接将后端集成到你的前端。

时间和人力

这是一个需要考虑的重要因素,因为你将需要这些资源来设置、构建和维护应用程序架构。
Firebase 非常简单,容易上手。实际上,前端开发人员可以创建和维护整个后端,只需要一点设置方面的知识。对于创建实时应用程序,Firebase 处理了大量的复杂性,并为你提供一个非常强大且易于使用的 SDK,帮你节省大量时间,而时间就是金钱。
而在 AWS 方面,因为它提供的服务是 Firebase 的十倍,所以它的使用和维护也要复杂十倍。不过,与 Firebase 相比,AWS 有一点学习曲线。
对于创建实时应用程序,你需要搭配使用 GraphQL API 和 DynamoDB 实例(同样是一个 NoSQL 数据库),并且你还必须设置 API 和数据库,对于一个简单的实时应用程序来说,这似乎显得有些多余。
总之,使用 Firebase,易于设置、使用和维护,需要你做的决定更少,非常适合简单的应用程序。使用 AWS,它提供更大的灵活性,这对构建大型、复杂的应用程序有很大帮助。
以上就是今天的内容,希望能帮你在选择 App 的后端服务开发时做出正确决定。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

全部留言(3)

  • 最新
  • 精选
  • Rainman
    然而国内因为某些原因用不了谷歌的firebase,所以......
    1
  • Geek_d02923
    感谢老师分享!
  • 小斧
    动态链接:将用户导航到你应用程序的正确位置,无论它是否已经安装。 远程配置:使用服务器端配置自定义并试验应用程序行为。 测试实验室:跨设备测试 App。 应用内消息传递:发送给用户参与活动。 分析:帮你规划未来的发布和用户参与策略。 ML Kit:在应用程序的前端或后端为你的解决方案添加机器学习功能。 考虑解决方案的复杂性和业务需求,并考虑可伸缩性,决定是否要创建 API。 如果你希望拥有一个 API,那么就用不到 SDK 了。另外,对于较大的项目,拥有一个 API 更有意义。 如果你的解决方案很简单,并且不想在 API 上投资,那么选择提供 SDK 的服务 / 前端框架,以便能直接将后端集成到你的前端。
    1
收起评论
大纲
固定大纲
Firebase 与 AWS 的服务异同点
怎样整合后端与应用程序?
时间和人力
显示
设置
留言
3
收藏
16
沉浸
阅读
分享
手机端
快捷键
回顶部