当您开始了解 MBaaS 时,这些都是很好的问题。我会尝试根据我的经验来回答:
1) MBaaS 提供比数据库更高级别的抽象。它提供更高级别的服务,而不仅仅是持久性。除了数据管理之外,还可以考虑用户管理、分析、推送等服务。MBaaS 几乎总是提供数据管理服务,但它的级别更高,因为它运行在 MongoDB 等数据库之上(因为 MBaaS 服务需要可扩展性,它们通常依赖于 NoSQL 数据库,但它们不会直接向您公开 db api)。优点:您可以处理更简单/直接的数据管理 API。缺点:您无法像在 db 上看到的那样对数据操作进行精细控制
2) 要将 MBaaS 绑定到其他数据库,您需要依赖 MBaaS 导入/导出服务(我想在阅读第一个问题后这对您来说很有意义)。优点:您不必担心数据如何存储在 MBaaS 中(它会扩展、具有完整性等)。缺点:您没有对数据的低级访问权限(您通过 MBaaS API 进行)。但我必须说,MBaaS 在允许您处理数据方面有很大改进(这正在变得更好)
3)也许你读过一些关于某些 MBaaS 的离线功能的东西。其中一些将操作和/或更改的对象保存在缓存中,然后在联机时与后端同步。这些形状可能因每个 MBaaS 而异,但在与后端通信时通常使用 JSON(JSON 便于数据/操作的传输,但不一定是 MBaaS 客户端缓存的内部表示)
4) 不是传统网络意义上的与 cookie 进行会话。MBaaS 通常在依赖于身份验证服务的用户会话级别上工作(它们在这方面特别强大)。一些 MBaaS 提供匿名用户功能,您的应用程序的用户可以在没有显式身份验证的情况下进行会话(但这不能与在 Web 上进行匿名会话的同一用户相关联)。通常,您必须使用用户身份验证来与 MBaaS 活动共享 Web 活动。
5) 在第一代 MBaaS 上这是不可能的。一切都是在独立应用程序中设计的。但是开始出现一些问题,例如“如果我想在不同的应用程序之间共享用户怎么办”?因此,MBaaS 提供了更多解决此类问题的服务(例如多个应用程序的单点登录)
6)我不确定我是否遵循,但如果您有一个使用 MBaaS 的应用程序,您可能会使用 MBaaS 身份验证服务来登录用户,因此您使用的是一个设备/一个缓存的事实不是允许您的应用对多个用户进行身份验证的问题。如果这不完全符合您的要求,请告诉我(我可以编辑问题)
希望这可以帮助您获得更好的图片。
最好的!