代码之家  ›  专栏  ›  技术社区  ›  ryeguy

如何在RubyonRails中分析请求?

  •  11
  • ryeguy  · 技术社区  · 14 年前

    如何分析控制器操作?

    我的一个视图需要很长时间来渲染,我想将其分解。我懂了 script/performance/profiler 但这似乎只能进入全球范围。

    3 回复  |  直到 9 年前
        1
  •  8
  •   robd    9 年前

    ruby-prof 是前进的道路。这是一个HOTO, How to profile your Rails and Ruby applications with ruby-prof .

    如果将其与可视化工具(如 kcachegrind 您可以轻松地将应用程序代码与框架代码分开。

    不久前,我在我的本地Ruby用户组做了一个关于这些工具的演讲: Making your rails app kick ass with ruby-prof and kcachegrind .

        2
  •  2
  •   Peter Mortensen icecrime    12 年前

    RubyonRails控制台应该告诉您哪些部分需要一段时间来呈现。如果这还不够,您可以安装新的relic gem(https://github.com/newreli/rpm),并在开发人员模式下使用它,它将为您提供所发生事情的概述。

    如果您正在部署 Heroku 您可以添加免费版本的RPM,它将为您提供与正在运行的应用程序相同的统计信息。

    Ruby有一个profiler(http://ruby-prof.rubyforge.org/)可以显示内存使用情况、调用时间等,但是从框架代码中传播代码可能很困难。

        3
  •  0
  •   Mike Jarema    11 年前

    我取得了一些成功 https://github.com/bhb/rack-perftools_profiler

    它将允许您为任何cputime、方法、对象分配或walltime分析单个或多个请求,并通过机架中间件进行良好集成。