Redis에 세션을 저장할 때 고려해야 할 사항:
세션 데이터는 Redis에 어떻게 저장되나요? 세션 속성 변경은 언제 저장을 트리거합니까? (추천 학습: Redis 동영상 튜토리얼)
구현:
세션의 데이터가 맵과 같은 구조를 가지고 있다는 점을 고려하면, 단일 세션 데이터를 저장하려면 Redis에서 해시를 사용하는 것이 더 적합합니다. 값은 세션 데이터를 저장하는 데 사용되며, 이 경우 세션 덮어쓰기 문제가 있으므로 해시를 사용하여 세션을 저장하고 매번 세션 속성을 변경하는 데이터만 저장합니다. 잠금 처리를 피하고 성능이 더 좋습니다.
세션 속성이 변경될 때마다 스토리지가 트리거되면 더 많은 세션 속성이 변경될 때 여러 Redis 쓰기 작업이 트리거되며 이는 각 요청이 처리된 후에 세션을 수행합니다. 변경된 속성을 작성합니다.
이번에 세션 변경이 없으면 redis 쓰기가 수행되지 않습니다. 변경되지 않은 세션이 시간 임계값을 초과하는 경우에만(세션 새로 고침 만료 시간 임계값은 변경되지 않음) 세션 저장이 트리거됩니다. 유효기간을 연장할 수 있습니다.
두 가지 구현 방법:
세션 중앙 집중식 저장소(redis, memcached, hbase 등).
다른 서버에 세션 데이터를 복사하는 두 가지 방법의 장점과 단점은 모두에게 분명합니다.
세션 중앙 집중식 저장소 기반 구현 계획:
필터 추가, 요청 차단 및 HttpServletRequest 래핑
getSession 메서드 다시 작성, 세션 저장소에서 세션 데이터 가져오기, 사용자 정의 HttpSession 구현 반환
새 세션 생성 후 , 쿠키에 세션 ID를 쓰세요
위 내용은 Redis에서 세션을 저장하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!