Hello,
I recently put a formerly phisical server into a virtual machine. Right now I can give to it only 1280MB of RAM, where the former server could enjoy a full 2GB, working without issues.
The server hosts 2 OpenAcs instances on Naviserver, both built from installation script like 1 month ago. The OS is Debian Wheezy and the db is Postgres 9.1 obtained from repositories.
When the server starts, memory consumption is fine and the websites are very responsive. During the day though, seems like nsd "gets comfortable" into memory, to the point it is not possible to call external commands anymore (my application needs to do this all the time to generate pdfs). ns_proxy is in place and seems to work correctly.
I had already discussed with Gustaf in this forum about memory allocation in tcl. I've tried different approaches, like turning off the zippy allocator and switching to different malloc alternatives, but the problem seems to persist.
The question is: is there a way to keep the ram size required for nsd to a minumim, maybe through the use of some aggressive allocator you could point me to? Is there some technique I could apply to configurations or tcl scripts to limit memory consumption?
Something that comes to my mind is that some autocompletion webservice we use extensively into forms makes use of tDom, but never delete the documents they create... could that cause a memory leak?
I am ready to give up and just get some more RAM, but first I was curious to explore different tweakings.