user system total real with collection 19.210000 0.030000 19.240000 ( 19.278860) with partial 55.260000 3.050000 58.310000 ( 58.442582) with helper 16.640000 0.020000 16.660000 ( 16.663933)
here is the code
- n = 51_000 - some_array = n.times.collect{'hello'} - Benchmark.bm do |x| - x.report("with collection") do = render partial: 'name', collection: some_array, locals: {name: 'hello'} - x.report("with partial") do - n.times.each do = render 'name', name: "hello" - x.report("with helper") do - n.times.each do = prunt "hello"
helper:
def prunt name ( content_tag(:h1, name) + link_to('http://www.dir.bg') ).html_safe end
more https://github.com/gudata/rendering