nodejs 是否适合做REST类型的API
发布于 12 年前 作者 bpw11320 15930 次浏览 最后一次编辑是 8 年前

想做一个rest风格的api给android应用调用, 不知道nodejs是否适合做成rest风格的api,提供json和xml类型的数据。 现在对这方面的选择有nodejs和ruby,还在权衡中 ,本人对这两种语言都不熟悉。从网上搜索到得的信息是rails差不多是做整站的,但并发性不如nodejs这样的非阻塞IO的效率高。我在考虑可能以后也会提供web的展现方式,可能会处理一些复杂的业务逻辑。 对nodejs目前信心不是很足,希望各位大大能介绍下node的能否符合一些业务操作,比如说数据抓取、rest支持等web开发常用的一些组件。

5 回复

我自己做过的一个简单站点,也是提供给客户端用api,因为nodejs里面很多都要自己处理,感觉用起来符合REST需要自己做很多相同的事情,封装相同的方法是个好办法,但是没找到这方面的库,自己写的也不是很好用 ~ 倒是用python写接口很方便

最近花了很多时间,将 Ruby Sinatra,Python Flask 还有 Node ExpressJS 玩过一遍。是为了搭建 REST API 的。

前几天看了一篇有关这几者性能对比的文章。如果按照 Request Per Second 来衡量的话,Node 原生达到 6000,ExpressJS 3000,Flask 忘了,约 1000~2000,Sinatra 900。

如果你是打算为 Android 搭建后端,你甚至可以只需要一个 CouchDB。CouchDB 提供了 REST API,可以直接用 HTTP REQUEST 进行数据操作。

我之前以 Sinatra+MongoDB 的方式搭建 API,在看到性能对比上的优势心动了,所以用回 Express。Express 有一个不好的地方就是 API 经常变化,不过这也是一个好处吧,证明这个项目非常活跃。

couchDB没了解过,可能也只是一些简单的表或者师徒的支持吧。 前几天去参加了一个ruby的conf,里面有个提到过用ruby中的goliath可以达到石台服务器并发量到3000左右。感觉这个也不错。就是不知道node现在是否配备的扩展包是否齐全,能否满足稍微复杂一点的业务逻辑。

API类似 express,性能接近 node原生,https://github.com/kissjs/kick.js

@guilin 感觉不错!ExpressJS 确实有点肿,研究研究。

回到顶部