Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Unbalanced process load ?? one java process is locked to highest CPU load ??

 
Huang Teng Shiu
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am using resin 2.1.6 on RedHat 7.3 on a P4-2G box with 1GB RAM.

We all know that resin will 'fork' a lot of java process to handle JSP/servlet requests.
Generally , these process have similar CPU load , each about lower than 5% of CPU load,
and no process will always occupy highest CPU load, for example :

BUT , sometimes (about two or three times per day), there will be one process 'locked' to highest CPU load , forever !
This is the case :

We see that PID 2667 occupies highest extraordinary CPU load , and it will never go down....and maybe goes up to 80% to 90% CPU load !!!
The JSP/servlet pages begin slow down , and the system load will go higher and higher.
Finally , it will cause javax.servlet.jsp.JspException
This is the result dumped to the error.log :

[2002/12/27 17:22:15] null
javax.servlet.jsp.JspException
at org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:324)
at org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:179)
at _jsp._SomePage__jsp._jspService(_SomePage__jsp.java:86)
at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
at com.caucho.jsp.Page.subservice(Page.java:497)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:182)
at com.caucho.server.http.Invocation.service(Invocation.java:312)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:342)
at com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:272)
at com.caucho.server.TcpConnection.run(TcpConnection.java:137)
at java.lang.Thread.run(Thread.java:536)

The error can not be automatically fixed!
Even I add <jsp recompile-on-error='true'/> in web.xml cannot solve the problem.

All I have to do is restart the webapp manually....and if I am not beside the terminal , then the error will never be recovered.

I don't think it's related to the size of concurrent online users. Because sometimes there will be more users and processes (In the midnight , sometimes up to 170+ processes) , and the server load is still low and the web site is very fluent.

Can somebody tell me what to do ? Thanks in advance ....
[ December 27, 2002: Message edited by: Huang Teng Shiu ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic