메모리 내 세션 복제/클러스터링을 방지하고 세션을 데이터베이스에 저장하는 방법을 찾고 있습니다. 서버 메모리를 절약하기 위해 데이터베이스에 비활성 세션 만 저장하기 때문에 Tomcat의 JDBCStore를 사용하면 유용하지 않습니다. 제안 사항이 있으십니까? 자신의 세션 객체를 개발 -Tomcat : 데이터베이스에 세션 저장
덕분에 당신이 그것을 사용하도록되어 방식으로 세션을 사용하지 않으려면 파비안
메모리 내 세션 복제/클러스터링을 방지하고 세션을 데이터베이스에 저장하는 방법을 찾고 있습니다. 서버 메모리를 절약하기 위해 데이터베이스에 비활성 세션 만 저장하기 때문에 Tomcat의 JDBCStore를 사용하면 유용하지 않습니다. 제안 사항이 있으십니까? 자신의 세션 객체를 개발 -Tomcat : 데이터베이스에 세션 저장
덕분에 당신이 그것을 사용하도록되어 방식으로 세션을 사용하지 않으려면 파비안
, 그때 전혀 사용하지 않는 선행. HttpSession
을 계속 구현할 수 있으며 HttpSession
구현에서 확장 할 수도 있습니다.
Filter
을 사용하여 요청을 래핑하여 표준 세션 개체가 아닌 세션 개체를 반환 할 수 있습니다. 세션에서 물건을 메모리가 아닌 DB에 저장할 수 있습니다.
DB에 쓰는 대신 Hazelcast을 사용할 수 있습니다. 분산 컬렉션을 제공합니다. 하지만 세션 복제를 구성하는 것과 동일한 노력이 필요하다고 생각합니다. 세션 복제는 모든 컨테이너에서 지원되는 것이 아닙니다.
이것은 대략적인 지침이므로 작업은 간단하지 않습니다. 그리고 표준 세션 사용 패턴을 고수하고 실제로 필요한 경우에만 DB에 저장하는 것이 좋습니다.
복제 필요성을 피하려면 고정 세션을 사용하십시오. 즉 사용자가로드 밸런서에 의해 서버로 연결될 때 해당 사용자의 각 후속 요청은 동일한 서버로 전송됩니다.
this project을보고 싶을 수도 있습니다. DB가 아닌 memcached에 세션을 저장하는 편이 좋을 것입니다.
체크 아웃이 매우 흥미 롭습니다.하지만 끈적이지 않은 세션 버전은 제작 준비가되어 있지 않습니다. ( – Fabe
재미있는 프로젝트, +1 – Bozho
btw, memcached-session-manager 1.4가 출시되었습니다. – MartinGrotzke
저에게 JDBC 세션 관리자를 구현하는 방법은 없지만 답변과 시간을 보내 주셔서 감사합니다. Hazelcast는 좀 더 자세히보아야하며, 나에게 매우 강력합니다. J. Brisbin과 비슷한 것을 할 것입니다. Brisbin : http://jbrisbin.com/web2/articles/tomcat-session-manager-backed-by-riak/
아마존의 Elastic Beanstalk에서 보았습니까? 그들은 끈적 거리는 세션을 제공합니다. – stepanian