0
활성 연결 수를 제한해야하는 응용 프로그램이 있으며이 작업을 수행하는 가장 논리적 인 방법은 단순히 활성 세션 수를 계산하는 것입니다.노드 익스프레스 세션 수
"node express session count"를 (를) 검색했지만 유용한 정보를 찾지 못했습니다.
노드 익스프레스에서 열린 세션 수를 얻을 수 있습니까?
대신 각 연결된 클라이언트의 IP 주소를 저장하는 것이지만이 방법의 문제점은 IP 주소를 데이터 저장소에서 수동으로 제거해야한다는 것입니다.
데이터 저장소로 redis를 사용하는 경우 만료를 사용하여 비슷한 결과를 얻을 수 있다고 생각합니다.
set ip.192.168.42.1 true
expire ip.192.168.42.1 60
ttl ip.192.168.42.1
etc etc
더 좋은 방법이 있습니까?
편집
나는 MemoryStore를 사용하는 제안을 시도했지만 나는 그것을 사용하는 방법을 알아낼 수없는 것?
var express = require("express");
var MemoryStore = express.session.MemoryStore;
MemoryStore.prototype.length = function(fn) {
fn(null, Object.keys(this.sessions).length);
};
MemoryStore.length(function(len) {
console.log('sessions:'+len);
});
사이드 노트는 유닉스/리눅스 서버에서 호스팅하는 경우, 당신은 쉽게 할 수 시스템 레벨에서이를 제한하십시오. –