• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Bear Bibeault
  • Junilu Lacar
  • Jeanne Boyarsky
  • Tim Cooke
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • salvin francis
  • Frits Walraven
  • Scott Selikoff
  • Piet Souris
  • Carey Brown

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

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
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 ]
If you open the box, you will find Heisenberg strangling Shrodenger's cat. And waving this tiny ad:
Thread Boost feature
    Bookmark Topic Watch Topic
  • New Topic