이번에 진행중인 개발 건을 운영에 배포하고나니 세션에 저장해둔 값을 못불러오는 오류가 있어서 아차 싶었다.. 로컬이랑 개발서버는 모두 한대의 서버로 사용했지만 운영서버는 WAS5대를 아파치로 로드밸런싱 해주기때문에 별도의 설정없이는 세션 공유가 불가능했다..
물론 로드밸런싱 해줄때 stiky_session 을 활성화 하면 최초 접속한 was서버로 계속 접속하지만 로드밸런싱 효율이 떨어진다고 하여 다른 방법을 알아보려했으나.. 당장 내일부터 운영 테스트를 진행한다고 하여 급하게 암호화된 쿠키 사용하도록 변경하였다.ㅠㅠ
찾아본 방법 중 가장 좋은 해결방안은 세션 클러스터링을 사용하는것이다. 톰캣 사이에 공유 파일 시스템 저장소를 만드는 개념이다.
web.xml의 </web-app>
바로 위에 <distributable/>
를 추가하고
톰캣 server.xml 의 <Engine>
설정을 해주고 포트랑 방화벽 오픈만 해주면 된다.
자세한 내용은 아래 글 참고
https://dojjong.tistory.com/11
톰캣 세션공유(세션 클러스터링)
세션 클러스터링이란 두 개 이상의 WAS가 있을 때 두 개 이상의 WAS에서 같은 세션을 사용하게 처리하는것을 말합니다. 모든 서비스에서 세션이 중요하지만, 특히 실시간으로 빠르게 돈의 이동이
dojjong.tistory.com
'WEB > Apache' 카테고리의 다른 글
[Apache] 아파치 재 시작 명령어 (0) | 2023.08.30 |
---|---|
[Linux] Apache Setting (0) | 2022.12.21 |