2016-08-11 5 views
0

Я работаю над приложением NodeJS (промежуточное программное обеспечение, используемое в Express-session, session-file-store), где я определил разрешения пользователя as- 'view', 'view-edit 'и' edit '. Это приложение должно иметь максимальное количество активных сеансов или активных пользователей. 10.Как ограничить 10 одновременных сеансов/соединений в nodeJS-приложении

Должен ли я использовать подсчет сеанса? Я должен maxAge ограничения сессии до 5 мин.

Таким образом, проблема заключается в том, что срок действия сеанса истек, а счет сеанса должен быть обновлен. но после сеанса истекло, я не могу его следы ..

+0

вы можете разместить код , –

+0

var sess_options = { путь: "/ tmp/sessions /", useAsync: true }; router.use (сессия ({ магазин: новый FileStore (sess_options), пересохраните: ложь, saveUninitialized: ложный, секрета: 'asts123', прокатки: ложная, печенья: {\t HTTPOnly: ложь, безопасных : true, maxAge: 60000} }));router.use (функция (req, res, next) { if (typeof req.session.user_mode === 'undefined') { session_ids.push (req.session.id); res.app.locals. session_count ++; req.session.user_mode = 'view_mode'; }} Теперь я не знаю, как уменьшить количество сеансов при истечении срока сеанса, чтобы узнать, сколько активных сеансов запущено. –

ответ

0

Наконец я получил решение, чтобы получить количество сеансов, если мы используем файл-Session-магазин в node.js

//file store parameters 
var sess_options = { 
path: "/tmp/sessions/", 
useAsync: true 
}; 
// sess_count variable 
var sess_count = 0; 

var file_store = new FileStore(sess_options); 
router.use(session({ 
    store : file_store, 
    resave : false, 
    saveUninitialized : true, 
    secret : 'asts123', 
rolling : false, 
cookie : { httpOnly: false, 
secure : true, 
maxAge : 60000 
} 
})); 

router.use(function(req, res, next) { 
file_store.length(function session_count(a,len) { 
    sess_count = len; 
    console.log("Total active session count is " + sess_count); 
    console.log("============"); 
}); 
return next(); 
}); 
Смежные вопросы