后端API与数据库(作为服务)

在一个假设的安排中,一些用户需要共同编辑数据,这个策略会产生最好的结果:

1,一个同步数据库,如pouchdb / couchdb。 这些提供了支持多个客户端的潜在脱机数据的支持,但是更多的工作必须由客户端应用程序完成数据和权限。

2,实时托pipe的数据库,如rethinkDb或深水。 这些提供更多服务器逻辑。

3,数据库服务api这样的地平线或deployd提供了一个快速的方法来build立数据库之上的后端apis

4,把你自己的东西像帆/羽毛/循环回来,让后端的全部力量。

对我来说,这似乎是一个select范围,但重要的事情是:

  • 易于开发数据pipe理和实时同步
  • 用户pipe理
  • 支持的客户端范围(is / swift / java)

最初的发展将是基于networking(浏览器/电子)的范围移动到iOS / Android应用程序。 最终,我相信我不确定是否可以使用数据库或应用程序的其余api来实现最佳结果。

非常感谢

完整免责声明我在deepstreamHub [1]工作,我们构build了deepstream.io并使用它来支持我们托pipe的云服务。

同步的数据库,如pouchdb / couchdb

据我所知,你从这些只是一个数据库(尽pipe非常酷)。 他们在客户端之间同步数据,通过他们的API提供各种不同的操作[2]。

实时托pipe的数据库,如rethinkDb或深水

在这里值得注意的是,deepstream不是一个数据库,它是一个实时服务器,提供pub / sub,远程过程调用,数据同步,以及提供authentication策略等。rethinkDb更类似于pouchdb / couchdb。

深水是数据库不可知的,因为我们提供了各种不同的caching和数据库连接器(rethinkdb是其中之一)。 RethinkDb在深度处理方面效果很好,实际上我们经常使用rethinkDbsearch提供者[3]与深度处理来生成dynamic列表。

Deepstream正式支持JavaScript(包括Node.js),Java和iOS SDK。

数据库服务api这样的视界或deployd

据我所知,视界是build立在重新思考的基础之上的,并且提供了一个更加基于平台的开发方法,提供了authentication策略等。

用帆/羽毛/循环等东西来滚动自己

帆和羽毛似乎提供了一种基于RESTful / websocket的后端的方法。 他们每个人都有他们适合的用例。

结论

我真的build议看看这个深度博客文章。对实时库和框架的概述,其中有更深入的描述每个服务和他们提供什么。

[1] deepstreamHub

PouchDB API文档

[3] 深层次的重新思考Db连接器