Optimization Rails 3的优化工具正在开发中?

Optimization Rails 3的优化工具正在开发中?,optimization,postgresql,ruby-on-rails-3,Optimization,Postgresql,Ruby On Rails 3,我正在开发一个部署在Heroku上的Rails 3应用程序,希望对其进行优化。我已经探索了不同的解决方案,如query_reviewer或New Relic 我无法让query_reviewer与Rails 3.0.1一起工作(我还必须切换到MySql,因为PostgreSQL不受支持) 关于New Relic,它看起来像一个很棒的免费工具,但只在生产中起作用。我首先需要在开发过程中改进许多DB查询,然后才能在生产中调整应用程序 所以这些工具都不适合我的需要 有什么建议吗?也许我应该依靠日志跟踪

我正在开发一个部署在Heroku上的Rails 3应用程序,希望对其进行优化。我已经探索了不同的解决方案,如query_reviewer或New Relic

我无法让query_reviewer与Rails 3.0.1一起工作(我还必须切换到MySql,因为PostgreSQL不受支持)

关于New Relic,它看起来像一个很棒的免费工具,但只在生产中起作用。我首先需要在开发过程中改进许多DB查询,然后才能在生产中调整应用程序

所以这些工具都不适合我的需要


有什么建议吗?也许我应该依靠日志跟踪来减少SQL查询的数量?

你想知道哪些活动不是绝对必要的,如果你能“删减”它们,会节省大量时间吗

请原谅我是一个单轨回答者,但有一个简单的方法可以做到这一点,而且很容易演示

当代码运行缓慢并让您等待时,使用Ctrl-C或其他方法手动中断代码,并检查堆栈跟踪。这样做几次

您在多个堆栈跟踪上看到它所做的任何事情都会占用大量的时间,具体多少并不重要。如果它是你可以修剪的东西,它将有更少的工作要做


如果这种方法的效果因为技术含量低而令人怀疑,这是可以理解的,但事实上,它可以很快发现任何探查器都能发现的任何问题。

你想知道哪些活动不是绝对必要的,如果你能“删减”它们,会节省大量时间吗

请原谅我是一个单轨回答者,但有一个简单的方法可以做到这一点,而且很容易演示

当代码运行缓慢并让您等待时,使用Ctrl-C或其他方法手动中断代码,并检查堆栈跟踪。这样做几次

您在多个堆栈跟踪上看到它所做的任何事情都会占用大量的时间,具体多少并不重要。如果它是你可以修剪的东西,它将有更少的工作要做


如果这种方法的有效性因为技术含量低而令人怀疑,这是可以理解的,但事实上它可以很快地发现任何探查器都能发现的任何问题。

我发现New Relic有一种开发模式,这看起来是在开发阶段优化应用程序的理想设置:

我发现New Relic有一种开发模式,它看起来是在开发阶段优化应用程序的理想设置:

感谢您的快速响应:)我很感谢您的回答,尽管我想要更自动化的,因为有些请求需要的时间太少,无法按Ctrl-C键。@Jose:如果程序在我有机会中断它之前完成,我会在它周围绕一圈,让它做10次、100次或1000次任何事情。然后我打断它。在发现并解决问题后,我移除了外部循环。您不必担心会遇到任何特定的请求,因为您将遇到任何需要花费大量时间的请求。如果您没有命中该请求,那是因为该请求不是性能问题,而它命中的是性能问题。这可能是你没有预料到的。谢谢你的快速回复:)我很感谢你的回答,不过我想让它更自动化一些,因为有些请求点击Ctrl-C的时间太少了。@Jose:如果程序在我有机会中断它之前完成,我会在它周围绕一圈,让它做10、100或1000次任何事情。然后我打断它。在发现并解决问题后,我移除了外部循环。您不必担心会遇到任何特定的请求,因为您将遇到任何需要花费大量时间的请求。如果您没有命中该请求,那是因为该请求不是性能问题,而它命中的是性能问题。这可能是你没有预料到的。