After much effort I upgraded our fairly large Rails app from 2.1 to
2.3. After deployment yesterday I noticed an across the board
increase in response times. It seems that every call to memcache now
takes 10x longer than before. Here are some example numbers from my
development log (below), with memcache running locally. We see
similar scale of performance drop in production as well - average
memcache call before 2ms, now 20ms. It adds up to a significant hit.
Before Rails 2.3 upgrade:
Cached fragment hit: views/homepage_recent_blog_posts (0.00043)
Cached fragment hit: views/homepage_active_threads (0.00033)
Cached fragment hit: views/homepage_weekly_feature (0.00029)
Cached fragment hit: views/homepage_recent_approved_items (0.00036)
Cached fragment hit: views/homepage_popular_items (0.00037)
Cached fragment hit: views/number_of_members (0.00032)
After Rails 2.3 upgrade:
Cached fragment hit: views/homepage_recent_blog_posts (3.2ms)
Cached fragment hit: views/homepage_active_threads (3.5ms)
Cached fragment hit: views/homepage_weekly_feature (2.9ms)
Cached fragment hit: views/homepage_recent_approved_items (2.8ms)
Cached fragment hit: views/homepage_popular_items (3.1ms)
Cached fragment hit: views/number_of_members (6.7ms)
Before I start delving into the memcache internals in Rails 2.3, has
anyone else experienced this degradation on their apps? Is there a
magic ‘make it fast again’ switch that I can flick?