jsp空页面导致的jvm heap溢出

   为了性能测试需要,写一个了简单的jsp页面:

  

<%@ page contentType="text/html;charset=UTF-8" language="java"%>

<html>
<head>
<body>
    <%
        Long l = System.currentTimeMillis()   ;
         double s = Math.cbrt(l);
        if((s*2)%8==0){
    %>
                    docker is <%=l%>
     <%
             }

     %>
</body>
</html>

在测试过程中,发现jvm堆内存有泄露情况!这个实在让人费解啊...经过百度发现装载JSP的tomcat每接受一次请求,就会为这个请求开一个Session,而这个Session所占有的内存要经过一段时间才能释放!

进行以下调整,

1. JSP的编译指令加入session的配置:

  

<%@ page contentType="text/html;charset=UTF-8" language="java"  session="false" %>

2. 在tomcat 的 web.xml中配置session的过期时间为0

 <session-config>
          <session-timeout>30</session-timeout>
 </session-config>

问题得以解决!

 

posted on 2014-10-14 13:53  babyblue  阅读(370)  评论(0编辑  收藏  举报