Lee Brown
administrator at leebrown.org
Tue Sep 13 19:01:53 EDT 2005
Greetings! It seems like each new request ought to be instantiating a new webObject instance, yet it also seems that each new instantiation has a copy of all the previous instance's data. Are you sure you're not writing your data into the webObject base class by mistake? If that's not the case, you might try manually garbage-collecting the response instance just prior to the end of your handler routine. Best Regards, Lee E. Brown (administrator at leebrown.org) _____ From: mod_python-bounces at modpython.org [mailto:mod_python-bounces at modpython.org] On Behalf Of mauchi Sent: Tuesday, September 13, 2005 11:57 AM To: mod_python at modpython.org Subject: [mod_python] extreme memory usage with apache2 I've noticed this behaviour as of late which causes large memory usage in apache2, rogue threads taking up 400+ megs for each client that eventually cause me to restart apache: I return all html content through a python object which handles the form data and tracks errors # Init object and parse form response = webObject(req) # return html or xml based on form entries req.write(response.returnSomething()) # print debugging information req.write(response.returnErrors()) the object has an internal array called errors where I store debugging information from the internal functions. What I expect is 1-2 lines of messages for each time the page is loaded which is printed at the bottom of the page. What I find is if I keep hitting refresh, that the lines grow each time with the previous load's messages. 50 refreshes later I'll have 50-100 lines of debugging information. This makes me think that the webObject is staying in memory between loads and doesn't get destroyed unt il I restart apache2. This has become more of a problem as each client page now requests frequent xml updates and the server quickly tires out. If anyone has a suggestion on how to either: turn off said behaviour in mod_python, destroy objects from memory, or a clever way to flush out all of an object's internal data between loads, I would be most happy. Thanks to all in advance! Mauchi -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mm_cfg_has_not_been_edited_to_set_host_domains/pipermail/mod_python/attachments/20050913/6eade7b3/attachment.html
|