Perrin Harkins wrote:
On Mon, 2003-11-24 at 13:41, Geoffrey Young wrote:

yeah, I don't know how to handle it. as I mentioned back in vegas, I don't see the reason for killing off interpreters


Neither do I, under a prefork MPM.  Are we just talking about threads
here?


we were discussing making SizeLimit useful under both prefork and threaded mpms. under 1.3 prefork, it's one interpreter per process, so you know who the problem is (assuming perl is the problem :). under threaded mpms the real culprit is not the process per-se, but one (or more) of the interpreters. so, in the spirit of only doing what you have to, we were kicking around the idea of killing the largest interpreter in the pool rather than bringing down the entire process (which replacing in an mpm such as worker might add significant overhead).



once it gets too large probably the best way is to kill it gracefully and let another one spawn in its place.


That's what happens now. SizeLimit is incredibly simple: run a cleanup
handler, and if the process is too big, tell it to exit after this
request. It sounds like there is no way to tell processes to exit after
a request anymore, which is more of a problem than I wanted to take on.

yeah, that's the issue. basically, all ap_child_terminate used to do was set the MaxRequestPerChild to 1. I'm pretty sure this was removed because requests are now harder to define and count. at any rate, I was going to look into doing something similar for 2.0 by twiddlins some of apache's private bits to get the same effect. we'll see how it goes :)



The main thing I think it needs is some way to help people decide what to set the limit at, but that would come later after it's working.

Do you remember what problem Theo ran into with it?

IIRC, it was something about RSS not being accurate, but I could be totally off - I only vaguely recall, since we quickly moved on to the implementation of killing processes and threads.


--Geoff


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to