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

时间:2017-05-20 20:31:37

标签: javascript node.js database

在一个假设的安排中,许多用户需要共同编辑哪些策略会产生最佳效果:

1,同步数据库,如pouchdb / couchdb。它们为具有离线数据潜力的多个客户端提供支持,但客户端应用程序必须为数据和权限执行更多工作。

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

3,数据库服务api这样的horizo​​n或deployd提供了一种在数据库之上构建后端apis的快捷方法

4,用风帆/羽毛/环回来滚动你自己的东西,让你拥有后端的全部力量。

对我而言,这似乎是一种选择,但重要的是:

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

最初的开发将基于网络(浏览器/电子),可以移动到iOS / Android应用程序。 最后,我相信我不确定使用数据库或应用程序的rest api是否可以获得最佳结果。

非常感谢

1 个答案:

答案 0 :(得分:2)

完全免责声明我在deepstreamHub [1]工作,我们构建了deepstream.io并使用它来支持我们的托管云产品。

同步数据库,例如pouchdb / couchdb

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

实时托管数据库,例如rethinkDb或deepstream

重要的是要注意deepstream不是数据库,它是一个实时服务器,提供发布/订阅,远程过程调用,数据同步,以及提供身份验证策略等.rethinkDb更类似于pouchdb / couchdb。

deepstream与数据库无关,因为我们提供了各种不同的缓存和数据库连接器(rethinkdb就是其中之一)。 RethinkDb与deepstream工作得很好,事实上我们经常使用rethinkDb搜索提供程序[3]和deepstream来生成动态列表。

deepstream官方支持Ja​​vaScript(包括Node.js),Java和iOS的SDK。

数据库服务api,例如horizo​​n或deployd

据我所知,视野是建立在rethinkDb之上,并提供更基于平台的开发方法,提供身份验证策略等。

用风帆/羽毛/环回来滚动你自己

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

结论

我真的建议你看看这篇深度博客文章An overview of realtime libraries and frameworks,其中对每项服务及其提供的内容有更深入的描述。

[1] deepstreamHub

[2] PouchDB API docs

[3] deepstream rethinkDb connector