ÃֽŠ°Ô½Ã±Û(OS/WAS)
2017.06.12 / 13:27
Tomcat »ç¿ë ½Ã Session Timeout ¼³Á¤, ¸ð´ÏÅ͸µ Çϱâ
±Ý±Ý±Ý
Ãßõ ¼ö 209
TomcatÀÇ Servlet °³¹ß ½Ã HttpSession Ŭ·¡½º¸¦ »ç¿ë ÇÑ´Ù. Session Timeout ¼³Á¤À» À§Çؼ´Â, setMaxInactiveInterval(int interval) ÇÔ¼ö¸¦ »ç¿ëÇؼ °³º°ÀûÀ¸·Î Á¤ÇØÁÙ ¼ö ÀÖÁö¸¸, °øÅëÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ°Ô ¼³Á¤À» ÇÏ´Â ÆíÀÌ ÁÁ´Ù. web.xml ¿¡ ¾Æ·¡ »ùÇÃÀ» Ãß°¡ ÇÏÀÚ.
<session-config> <session-timeout>30</session-timeout> </session-config>
session-timeout Àº ºÐ ´ÜÀ§·Î ¼³Á¤ µÈ´Ù. 30 À̶ó°í ¼±¾ðÇß´Ù¸é getSession() ÇÒ¶§ ¸¶´Ù Session À¯È¿ ½Ã°£Àº 30ºÐ ÀÌ´Ù.
session ÀÌ created, destoryed µÇ´Â °ÍÀ» È®ÀÎ ÇÏ°í ½ÍÀ» ¶§°¡ ÀÖÀ» °ÍÀÌ´Ù. HttpSessionListener ¸¦ ±¸ÇöÇϸé È®ÀÎÀÌ °¡´ÉÇÏ´Ù.
- HttpSessionCheckingListener.java
public class HttpSessionCheckingListener implements HttpSessionListener { private Logger logger = LoggerFactory.getLogger(this.getClass()); public void sessionCreated(HttpSessionEvent event) { if (logger.isDebugEnabled()) { logger.debug("Session ID".concat(event.getSession().getId()).concat(" created at ").concat(new Date().toString())); } } public void sessionDestroyed(HttpSessionEvent event) { if (logger.isDebugEnabled()) { logger.debug("Session ID".concat(event.getSession().getId()).concat(" destroyed at ").concat(new Date().toString())); } } }
À§ ÆÄÀÏÀ» web.xml ¿¡ µî·Ï ÇÒ Â÷·Ê´Ù.
<listener> <listener-class>kr.co.whitelife.web.mvc.listener.HttpSessionCheckingListener</listener-class> </listener>
Tomcat Start ÇÑ ÈÄ ·Î±×¸¦ »ìÆì º¸ÀÚ. »ý¼ºµÇ´Â ºÎºÐ, ¼Ò¸êµÇ´Â ºÎºÐ È®ÀÎÀÌ °¡´ÉÇÏ´Ù.
created
2014-10-07 14:06:05,957 DEBUG HttpSessionCheckListener - Session IDD31C36AE223F8C14BB1087F6BFCEBD35 created at Tue Oct 07 14:06:05 KST 2014
destroyed
2014-10-07 14:08:06,068 DEBUG HttpSessionCheckListener - Session IDD31C36AE223F8C14BB1087F6BFCEBD35 destroyed at Tue Oct 07 14:08:06 KST 2014
Âü°í »çÀÌÆ®
Ãâó: http://blog.whitelife.co.kr/221 [White Life Story]