Not really bad fruits. And if they were, we would have already enabled and activated them by default.
80 MB RSS (as opposed to a virtual size, which can be much larger) is actually pretty good. During normal operation, he will use from 70 to 120 MB of RSS for each process (depending on the deployment model, and some on the passenger).
As suggested by andrea, you can reduce the total memory by about a third when using REE (Ruby Enterprise Edition, which is also free). But this savings can only be achieved by starting several processes (each of which requires the aforementioned memory). REE achieves this savings by optimizing Ruby for a technology called Copy on Write, so additional application processes take up less memory.
So, sorry, your (hypothetical) 128 MB vServer is probably not enough. For a small installation, you can compress the minimum installation to 256 MB, but it is only starting to be anything but a complete pain in the ass at 512 MB (including the database).
This is because Rails applications work unlike things like PHP. They require an executable instance of the application server. This instance can usually respond one request at a time, using the same amount of memory. Thus, consuming your memory is roughly equivalent to the number of application processes you are running, regardless of the actual load. But if you set up your system correctly, you can get quite a lot of requests / exits from one process.
Holger just
source share