If you're running Ruby 1.9.3, go upgrade to 2.1.2. It is such an improvement all around - deploy time, restart time, test time, console startup (if you're using Rails), etc. Just a whole different experience.<p>And if you've done a 1.8.7 to 1.9.3 upgrade, going from 1.9 to 2.1 is nothing. Piece of cake by comparison.
Ruby 2.1's GC is worlds faster, for most applications-- especially with a minor amount of tuning. I saw GC time drop from 20ms to under 5ms (using new relic). Memory usage until GC has gone up a bit though.<p>I can only hope, and have good reason to after 2.1, that future improvements are so good.<p>... Ruby just gets better by the year, I love it!
Why not to let the user decide when he wants to achieve full GC (As Passenger is doing it between requests) and so avoid the performance regression this patch brings?
Since 2.1 has made dramatic decrease in GC time, now the largest contribution on the NewRelic graphs is in Ruby Interpreter itself.<p>Are there any improvement on that front in Ruby 2.2?