Loading ...
Sorry, an error occurred while loading the content.
 

hanging CPU-sucking httpd procs that say "..reading.."

Expand Messages
  • Jeff Ambrosino
    Hi mod_perl folks, I m getting occasional hanging httpd children (prefork) that suck up alot of CPU and bog down my server. When I inspect Apache Status
    Message 1 of 3 , Sep 8, 2005
      Hi mod_perl folks,

      I'm getting occasional hanging httpd children (prefork) that suck up
      alot of CPU and
      bog down my server. When I inspect Apache Status (ExtendedStatus On), I see
      something like this:

      434-3 11031 0/29/612 R 0.49 1341 0 0.0 0.20 4.09 ? ? ..reading..

      There's no client IP, no virtual host, and no URI, just "..reading.."
      Since these hung
      procs don't die off by themselves, I'm thinking of setting up
      Apache::Watchdog. But,
      before I resort to this, I'd like to do some more investigation to see
      if I can't find and
      fix the source of the problem. Unfortunately this is a production server so I
      can't do anything too intrusive. Any suggestions for where to look or
      other ways
      to debug/diagnose this problem?

      FYI I'm using httpd-2.0.54, mp2.0.0-RC4, libapreq2-2.04_03-dev.

      thanks,
      JB
    • Jeff Ambrosino
      Sorry, I should have mentioned that I m using a reverse mod_proxy, so the hanging is most likely during the http response from the back-end web server. I
      Message 2 of 3 , Sep 8, 2005
        Sorry, I should have mentioned that I'm using a reverse mod_proxy, so
        the "hanging" is most likely during the http response from the
        back-end web server. I realize this may not be a MP2 problem, but
        figured I'd at least start here on the mod_perl list since my entire
        app is an http output filter that processes the proxied response (and
        unfortunately the mod_proxy list is basically dead).

        thanks
        JB


        On 9/8/05, Jeff Ambrosino <jbambrosino@...> wrote:
        > Hi mod_perl folks,
        >
        > I'm getting occasional hanging httpd children (prefork) that suck up
        > alot of CPU and
        > bog down my server. When I inspect Apache Status (ExtendedStatus On), I see
        > something like this:
        >
        > 434-3 11031 0/29/612 R 0.49 1341 0 0.0 0.20 4.09 ? ? ..reading..
        .................
        > FYI I'm using httpd-2.0.54, mp2.0.0-RC4, libapreq2-2.04_03-dev.
        >
        > thanks,
        > JB
        >
      • Jeff Ambrosino
        Not one to leave myself hanging :), I thought I d update the group before I switch venues... I ve narrowed this problem to SSL requests only, and httpd is
        Message 3 of 3 , Sep 10, 2005
          Not one to leave myself hanging :), I thought I'd update the group
          before I switch
          venues... I've narrowed this problem to SSL requests only, and httpd is hanging
          during the request read. I use a PerlPostReadRequestHandler (which
          has been helpful
          in scoping the problem via a USR2 signal trap), but it turns out httpd
          isn't even
          getting that far... the httpd child hangs somewhere before the
          scorecard changes
          from "..reading.." status. Could be a locking/semaphore issue... My next debug
          attempt (I'm waiting for the problem to recur) will be using gdb to
          get some backtraces
          and then head over to http-dev and/or mod_ssl lists. Any last-ditch advice from
          MP folks would be welcome, but not expected since this doesn't appear
          to be a MP/Perl
          issue (although it could be libapreq since I believe mod_ssl uses that.)

          thanks
          Jeff


          On 9/8/05, Jeff Ambrosino <jbambrosino@...> wrote:
          > Sorry, I should have mentioned that I'm using a reverse mod_proxy, so
          > the "hanging" is most likely during the http response from the
          > back-end web server. I realize this may not be a MP2 problem, but
          > figured I'd at least start here on the mod_perl list since my entire
          > app is an http output filter that processes the proxied response (and
          > unfortunately the mod_proxy list is basically dead).
          >
          > thanks
          > JB
          >
          >
          > On 9/8/05, Jeff Ambrosino <jbambrosino@...> wrote:
          > > Hi mod_perl folks,
          > >
          > > I'm getting occasional hanging httpd children (prefork) that suck up
          > > alot of CPU and
          > > bog down my server. When I inspect Apache Status (ExtendedStatus On), I see
          > > something like this:
          > >
          > > 434-3 11031 0/29/612 R 0.49 1341 0 0.0 0.20 4.09 ? ? ..reading..
          > .................
          > > FYI I'm using httpd-2.0.54, mp2.0.0-RC4, libapreq2-2.04_03-dev.
          > >
          > > thanks,
          > > JB
          > >
          >
        Your message has been successfully submitted and would be delivered to recipients shortly.