This post originated from an RSS feed registered with Ruby Buzz
by Daniel Berger.
Original Post: A quick Rails benchmark
Feed Title: Testing 1,2,3...
Feed URL: http://djberg96.livejournal.com/data/rss
Feed Description: A blog on Ruby and other stuff.
I was recently curious to see how Ruby's sort_by compared against letting the database do the sorting (via ActiveRecord). Here's the code I tested, with some fields slightly altered to protect the innocent:
MAX = 100
Benchmark.bm do |x|
x.report("sort_by"){
MAX.times{
User.find_all_by_some_field(true).sort_by(&:cuid)
}
}
x.report("order_by"){
MAX.times{
User.find_all_by_some_field(true, :order => :cuid)
}
}
end
The results? Meh, basically identical. Different runs yielded very slight advantages for each, depending on the alignment of the planets at any given moment.
But, it gives me an excuse to drop the icky "&:" notation, which I loathe.