我想要一个管理区域的特殊部分,它显示过去一周很慢的页面/查询列表。
是否有一个gem /插件或其他简单的方法来实现/自动化Rails框架的这些功能?
答案 0 :(得分:5)
http://www.newrelic.com/features.html
RPM的简短截屏视频:
http://railslab.newrelic.com/2009/01/22/new-relic-rpm
P.S。我不为New Relic工作:)
答案 1 :(得分:4)
此处为one example,another和yet another。有关更多信息,请参阅google。
答案 2 :(得分:0)
是的,这似乎是一个好主意。我以前从未见过它,但我想你可以记录每个请求到数据库的时间;然后一个简单的查询将显示最慢的请求。
优化应用的方式完全取决于您的代码;我想没有银弹。
答案 3 :(得分:0)
首先想到的是:人们可以跟踪查询的执行时间,如果它通过了一些被认为是正常的阈值(平均可能),它会被记录在一起,并会记录一些分析信息(否则会被丢弃)。
查询查询的各个部分(如从数据库中获取数据,逻辑等)也是可行的,然后再次将时间与某些平均值进行比较。
一个缺陷是,由于他们所做的“工作量”不同,某些页面/查询的处理时间明显长于其他页面/查询。人们必须为网站的不同部分/不同类型的查询保留大量的平均值,以便摆脱通过设计执行更长时间的常规查询的持续流量。
这是一种非常简单的方法,我相信有更好的方法可以做到。