I'm hosting a Django site in Webfaction with gunicorn (a master + 4 workers). I've settled with 4 because I've had good results in the past for the traffic I get, and "CPU cores * 2 + 1" just eats up my RAM.
Under normal usage, the gunicorn workers take around 45 Mb or RAM each, and I'm getting page load times of just under a second. Now, after sitting unattended for a few hours, the workers will go down to anything from 5 to 15 Mb of RAM each. If I visit the site at that point, it takes more than 10 seconds to get a response from the server. After browsing 2 or 3 pages, the workers go back to the normal memory usage and the site becomes speedy again.
According to this answer (see point 1), gunicorn should have the site ready to go at any time, without needing a "warm up" period after not receiving requests for a while. This is consistent with what I've seen when using this setup in at least a dozen other sites: gunicorn is simply there, ready to go at any time.
Is it normal for the workers to lower their memory consumption to such low levels? How can I get rid of the long response times after inactivity?