기술지원 문의

클래스 파일 디플로이시 사용자세션이 끊어집니다.
양신석 / 2007-03-23 18:08

클래스 파일 deployee시 사용자세션이 끊어집니다.

 

해결 방법이 없나요?

 

운영중에 급하게 수정할 일이 생기면

 

소스수정하고 컴파일해서 실서버에 올리지요.. 그럼 그 순간

 

시스템에 물려있는 사용자 세션이 끊어지고 ...

 

중요한 에디팅작업을 하던 사용자는 불만이 심하죠..ㅠ ㅠ

 

방법이 없을지요..??

[답변]클래스 파일 디플로이시 사용자세션이 끊어집니다.
권용찬 / 2007-03-23 23:30

물론 방법이 있습니다. ^^

 

협업형태의 개발중에는 개발자가 자주 Class를 업로드 하게되고 Resin은 기본값으로 2초마다 변경된 Class 나 Configfile (default : resin.conf)이 변경되면 Class를 다시불러들이게 됩니다.

 

이때 사용자의 세션정보가 초기화 되는 문제가 발생합니다.

 

이러한 경우   File Session Store 라는 방법으로 해결합니다

 

즉 사용자가 접속하여 JSESSION이 생성되면 이세션정보를 서버의 session 폴더에 저장해 놓게 되고 이러게 되면 class reloading 또는 resin 서버의 짧은시간동안의 재구동의 경우 사용자의 세션은 지속적으로 유지되게 됩니다.

 

그럼 실제 셋팅하는 방법은?   아래와 같습니다.

 

...

 <persistent-store type=\"file\">  <==  이부분을 찾아서 type을 file 로 합니다.
  </persistent-store>
...

<web-app id=/>
...
  <session-config>

     <use-persistent-store>true</use-persistent-store>
     <file-store>WEB-INF/sessions</file-store>  <== 세션 파일이 실제 저장되는 장소
  </session-config>
...
</web-app>

간혹 상기 설정후 구동이 안되는 버젼이 있습니다.

file store 설정하는방법이 3가지 정도 있는데 버젼업이 되면서 조금씩 바뀌었습니다.

대표적으로 3.0.8 버젼대가 그러한데 이경우 가능하면 3.0.18 버젼이상으로 업그레이드 하시고 버젼 업그레이드가 정히 어려운 경우 사용하시는 버젼을 적어서 다시 질문해 주시면 해결방법을 알려드리겠습니다.

 

즐거운 주말되시고 

잘 설정하셔서 좀더 편한 환경에서 개발하시길 바랍니다. ^^