之前@d4rkl0rd 同学写了一篇rrestjs框架的文章:
《我与rrestjs的相遇,是惊喜,是开始》
让我很欣慰啊,虽然现在用rrestjs开发项目的TX不多,但是还是有那些愿意尝试并不断给我意见的朋友,衷心的感谢他们。比如@a272121742就给了我很多api方面的修改意见。
最近发布了rrestjsv0.9版本,增加一些功能和修复了bug,从而使api也更加简洁,想从另外一个方面让大家对node.js有个认识,除了expressjs,还有rrestjs轻量级框架可供选择啊。
我们先来看下一个简单的hello world服务器的代码.
1 | var http = require('http'), |
大家可以看到上述代码,只不过多了一行require(‘rrestjs’),而其他完全与node.js官网的示例一模一样,这也是rrestjs称作轻量级的原因,完全没有侵入您的代码。
node.js可以充分的利用cpu个数,来启动cluster。利用rrestjs框架您只需要在config配置文件中设置如下,即可轻松开启多个进程,并且进程间会由rrestjs自动完成心跳和内存监控,一旦发现异常将自动重启子进程。
1 | isCluster:false, //是否开启多进程集群 |
您的服务器代码,就是上述hello world代码无需任何改动。只需要在前面加上一行载入配置文件即可:1
2
3
4
5
6module.exports.conf= require('./config/multi.conf.js');//只需要加入这行载入配置文件
var http = require('http'),
rrest = require('rrestjs'),
server = http.createServer(function(req, res){
res.send('hello world everyone!');
}).listen(3000);
当然您还不必担心多cluster的session内存共享工作,rrestjs已经帮您自动同步内存session信息了,但是还是建议您利用rrestjs自带的mongodb的session功能存储
当您只开启1个cluster时,rrestjs框架会进入开发者模式,当配置文件中的目录里的文件发生改变时,cluster将自动重启,免去您频繁的CTRL+C和上+enter了
之前有TX议论是try{}catch{}好还是路由表好,我在0.9版本里为rrestjs新增加了一项简单的路由表控制,比如:
1 | var conf = module.exports.conf= require('./config/post.conf.js'); |
简单说明一下:路由表的设置是这样规定的
方法:方法:URL路径
rrestjs也是支持类似try和catch的路由的,这样速度更快。
1 | module.exports.conf = require('./config/config');//加载配置文件,必须放在rrestjs加载之前 |
安装rrestjs的方法也非常简单:
npm install rrestjs
即可,也可以去github上下载: