기술지원 문의
파일시스템을 이용한 세션 설정은 단점이 뭔가요?
유도연 / 2002-12-06 00:00
세션이 자동 컴파일시 사라지기 때문에 config에서 세션을 파일 시스템으로 사용하는 것으로 바꾸었습니다. 그랬더니 세션 유지가 되더군요.
여기에서 의문점은 다음의 코멘트가 무슨 의미를 가지고 있느냐는 것입니다.
개발하는 동안은 언코멘트 하라고 하는데, 특별한 이유가 있나요?
--관리자 님의 글 [2002-12-06 08:51:40]
>resin에서 자동컴파일 기능을 설정해놓은 상태에선
소스가 변경되면 다시 컴파일 하죠.
그 클래스는 이미 사용된 과거의 클래스와 다릅니다.
즉 메모리에서의 상속관계가 전부 이상해지죠.
이 때문에 resin은 해당 어플리케션을 closing했다가
다시 어플리케이션을 초기화합니다.
그러므로 세션이 유지가 안되는 것이 정상입니다.
다른 WAS에서 개발하시는 분들을 보면
보통 소스를 수정하여 재컴파일 하면
WAS를 restart하더라구요.
--유도연 님의 글 [2002-12-06 01:38:07]
>레진의 편리한 점이 특정 폴더에 서블릿 소스 파일을 올리면 자동 컴파일 되는 것입니다.
참 편리하기는 한데, 알 수 없는 문제가 발생하고 있습니다.
로그인으로 세션을 맺어 놓은 상태에서 새로운 서블릿 소스를 올리면 세션이 사라지고 로그 아웃된 상태가 된다는 것입니다.
마치 레진 서버를 restart 한 것과 같이 되는 것이죠.
문제가 뭔가요?
특별히 cofig를 변경한 것도 없고, 세션을 맺는 것도
session = request.getSession(true);
session.setAttribute(\"ID\", \"xxx\");
이런식으로 보편적인 코드를 사용하는데요?
답변 부탁드립니다.
참고로.. 소스파일 올릴 때마다 로그 파일에 다음과 같은 내용이 생기더군요.
[2002-12-06 00:27:01.078] closing application http://localhost:8080/
[2002-12-06 00:27:01.098] initializing application http://localhost:8080/
[2002-12-06 00:27:02.216] Compiling /home/apache/htdocs/WEB-INF/classes/test.java
Re:파일시스템을 이용한 세션 설정은 단점이 뭔가요?
관리자 / 2002-12-10 00:00
코맨트를 열어 놓으면
WEB-INF/sessions라는 디렉토리에 어플리케이션의
Session정보를 저장합니다. 그러면 세션정보가
파일에 정장되므로 세션을 유지할 수 있습니다
다만 다소간 세션관련 어플리케이션이 느려지겠죠.
다소 사용자 많고 트래픽이 많은데 세션공유가 필요하다면
TCP-RING과 JDBC를 이용한 방법이 더 좋습니다.
--유도연 님의 글 [2002-12-06 15:50:47]
>세션이 자동 컴파일시 사라지기 때문에 config에서 세션을 파일 시스템으로 사용하는 것으로 바꾸었습니다. 그랬더니 세션 유지가 되더군요.
여기에서 의문점은 다음의 코멘트가 무슨 의미를 가지고 있느냐는 것입니다.
개발하는 동안은 언코멘트 하라고 하는데, 특별한 이유가 있나요?
--관리자 님의 글 [2002-12-06 08:51:40]
>resin에서 자동컴파일 기능을 설정해놓은 상태에선
소스가 변경되면 다시 컴파일 하죠.
그 클래스는 이미 사용된 과거의 클래스와 다릅니다.
즉 메모리에서의 상속관계가 전부 이상해지죠.
이 때문에 resin은 해당 어플리케션을 closing했다가
다시 어플리케이션을 초기화합니다.
그러므로 세션이 유지가 안되는 것이 정상입니다.
다른 WAS에서 개발하시는 분들을 보면
보통 소스를 수정하여 재컴파일 하면
WAS를 restart하더라구요.
--유도연 님의 글 [2002-12-06 01:38:07]
>레진의 편리한 점이 특정 폴더에 서블릿 소스 파일을 올리면 자동 컴파일 되는 것입니다.
참 편리하기는 한데, 알 수 없는 문제가 발생하고 있습니다.
로그인으로 세션을 맺어 놓은 상태에서 새로운 서블릿 소스를 올리면 세션이 사라지고 로그 아웃된 상태가 된다는 것입니다.
마치 레진 서버를 restart 한 것과 같이 되는 것이죠.
문제가 뭔가요?
특별히 cofig를 변경한 것도 없고, 세션을 맺는 것도
session = request.getSession(true);
session.setAttribute(\"ID\", \"xxx\");
이런식으로 보편적인 코드를 사용하는데요?
답변 부탁드립니다.
참고로.. 소스파일 올릴 때마다 로그 파일에 다음과 같은 내용이 생기더군요.
[2002-12-06 00:27:01.078] closing application http://localhost:8080/
[2002-12-06 00:27:01.098] initializing application http://localhost:8080/
[2002-12-06 00:27:02.216] Compiling /home/apache/htdocs/WEB-INF/classes/test.java