안녕하세요. WAS 세션 클러스터링시 JAVA파일 serialization에 대해 질문하고자 합니다.
멀티인스턴스로 4개의 톰캣 인스턴스에 세션 클러스터링이 되게 Spring MVC로 개발할 때
(1서버에 프로젝트.war 파일이 여러개 올라가서 구동됨)
저는 처음엔 세션 공유 문제니깐 View단과 데이터 주고 받는 VO 도메인모델 파일들만
serialization 적용하면 되겠지하고 생각했는데
혹시 비즈니스로직이 들어간 Service단이나 Contoller단 등 존재하는 모든 JAVA파일들에게도
serialization 적용해야하는 건지요?
만약 그래야한다면 혹시 Spring 자체에서 제공하는 Abstract 추상클래스 같은게 있어서
그걸 사용하면 되는지 알고 싶습니다.
어느 정도 규모가 있는 플젝은 다들 WAS에서 세션 클러스터링을 사용하실 텐데
그러면 개발단에서는 자바파일들 시리얼라이제이션을 어디까지 적용해야하는지요?
여담이지만 환경은 1개의 IP선상 서버에 톰캣 인스턴스만 멀티입니다.
사례를 참고하고자 전자정부표준프레임워크를 확인해보았으나 VO파일은 확실히 시리얼라이제이션
상속되어있는 걸 확인했는데 서비스나 컨트롤러단은 워낙 egov쪽 자체 API가 떡칠 상속 구현되어 있어서
확인이 쉽지가 않네요.
결론은 세션 클러스터링 시 DTO는 물론 비즈니스 로직 구현된 서비스와 컨트롤러 등 WAS에 올라가는
모든 자바 파일들을 다 serializatoin 해줘야 하는 것인지요?
1개의 의견 from SLiPP
제가 소스 코드를 볼 수 없지만 일반적인 경우에 대한 답변을 드릴께요.
세션 클러스터링을 하는 경우 세션을 관리하는 객체에 대해서만 serialization을 하면 됩니다. 이럴 경우 객체 안에 있는 필드도 모두 serialization이 가능해야겠죠.
이런 관점에서 일반적으로 세션으로 관리하는 데이터는 VO가 일반적이죠. 물론 VO가 아닌 경우도 있을 수 있으니 그건 확인해 보시고요.
의견을 남기기 위해서는 SLiPP 계정이 필요합니다.
안심하세요! 회원가입/로그인 후에도 작성하시던 내용은 안전하게 보존됩니다.
SLiPP 계정으로 로그인하세요.
또는, SNS 계정으로 로그인하세요.