1

Ruby Benchmark で Rails クエリをテストしました。

puts Benchmark.measure {
  @product_providers = SiteController.fetch_providers(@product_types.keys)
}

product_providerこれは基本的に、テーブルを結合するためのクエリですが、product_typeクエリのロジックは質問の範囲外です。

protected

def self.fetch_providers product_types
    fetched_providers = {}
    if product_types && product_types.kind_of?(Array)
        product_types.each do |product_type|
            fetched_providers.merge!( { product_type.underscore => product_type.constantize.joins(:provider) } )
        end
    end
    fetched_providers
end

私の質問は:

Ruby Bencmark 内でクエリをテストする理由は次のとおりです。

0.000000   0.000000   0.000000 (  0.000796)

ただし、内部でクエリを実行すると、rails console4〜6秒後に結果が得られます:)

4

1 に答える 1

1

ミニプロファイラーを使用してパフォーマンスをテストできますhttp://miniprofiler.com/ およびこのトピックに関する railscasts http://railscasts.com/episodes/368-miniprofiler

于 2013-08-29T07:58:50.943 に答える