2

I'm running Apache 2.2.12 with mod_wsgi, hosting a Django site. Most of the apache child processes weigh in at about 125MB RSS, but occasionally I see one child balloon to > 1GB RSS.

At this point there's usually 1 huge process (>1GB), a couple of large ones (>500MB) and the rest are still ~125MB. These are the mod_wsgi daemon processes.

I've tried using memory leak tracing in Python to see if it's the Django code, and I see no leaks. Looking in the logs doesn't show any particularly strange requests.

I'm stumped on how to figure out what's causing this - any ideas? Also, any workaround ways to kill the large apache process when it gets too big, without bringing apache down?

Some more details:

  • Not using mod_php
  • Using pre-fork
Malcolm Box
  • 211
  • 2
  • 6

2 Answers2

1

Use mod_status with ExtendedStatus On and see what that specific PID is doing.

Luke404
  • 5,826
  • 4
  • 47
  • 58
0

pmap -x pidofprocess

You can kill an apache child, but, that isn't a great solution. Are you also running with mod_php? mpm-prefork?