rrestjs
Version:
HIgh performance node.js ROA & RESTFUL web framework.
48 lines (46 loc) • 2.13 kB
JavaScript
/*
基本测试, session 例子
对于有时间限制的session只能手动浏览器测试了
*/
var should = require('should');
var path = require('path');
module.exports.rrestjsconfig = {
listenPort:3000,
baseDir: path.join(__dirname),
//cluster配置
isCluster:true, //是否开启多进程集群
ClusterNum:8, //开启的进程数
//mongodb 配置
isMongodb:true, //是否开启mongodb支持,注意:如果使用数据库存储session,这里必须开启
MongodbIp:'127.0.0.1', //mongodb地址
MongodbRC:false,//如果是false表示不使用mongodb的副本集,否则为字符串,表示副本集的名称
MongodbRChost:[],//表示mongodb副本集的ip:port数组。
MongodbPort:27017, //mongodb端口
MongodbConnectString:false, //是否使用字符串连接,日入nae的连接方法,这个优先级高于地址+端口
MongodbConnectTimeout:1000*30,//连接超时
MongodbMaxConnect:1,//连接池连接数
MongodbDefaultDbName:'rrest',//默认使用的数据库名
poolLogger:false,//是否记录连接池的日志,建议关闭
//session配置
isSession:true, //是否开启session,开启会影响性能。
syncSession:false,//当多进程时是否开启session同步,开启会影响性能。
sessionName:'rrSid', //保存session id 的cookie 的name
sessionExpire:false, //false表示会话session,否则填入1000*60,表示session有效1分钟
clearSessionSetInteval:1000*60*60, //自动清理垃圾session时间,建设设置为1小时
clearSessionTime:1000*60*60*24,//会话session超时,建议设置为1天
//session内存存储
sessionDbStore:true,//是否使用mongodb数据库存储session,如果设置为true,则不需要同步session
};
var http = require('http'),
rrest = require('../../'),
loop = 1;
server = http.createServer(rrest(function (req, res){
if(loop>=5) return res.send('done');
if(req.session.count>100){
req.delsession();
++loop;
return res.send('del');
}
if(!req.session.count) req.session.count = 0;
res.send(++req.session.count);
})).listen(rrest.config.listenPort);