我正在使用Google Flutter开发移动应用程序,该应用程序需要通过JSON请求和API访问数据库。另外,数据库不受我控制,因此,如果我想要其他功能,则必须付费(向数据库公司支付大量资金)。
因为访问数据库需要仅持续1小时的身份验证令牌,所以我认为每次用户登录或恢复应用程序时,都会触发云功能以从第三方数据库检索信息并将其复制到Firestore上的集合。然后在应用程序上,我只需从Firebase访问集合
我已经在使用Firestore,因为我需要它来推送和访问过去的推送通知。我有一个云功能,当将新文档添加到“通知”集合中时,该功能会触发推送通知。我可以通过这种方式访问过去的通知。
我以前从未做过此事,还需要考虑其他优点和缺点吗? 这种方法有多现实?
优点 -使用Firestore的离线数据持久性 -可伸缩性(因为将来有可能我会创建一个Webapp版本以及不同版本的应用程序)我可以重用云功能与第三方数据库来回同步 -能够以较低的成本添加将来的功能(因为数据库公司每小时收取约130美元的开发费用) -访问内置在数据库中的事件触发器 -将数据保存到应用程序中的一个数据库,简化了数据流
缺点 -必须创建单独的云功能才能在两个单独的数据库之间同步数据 -管理数据?