2011-03-31 59 views
2

1)ColdFusion管理员应该关闭/打开哪些设置?您如何正确评估ColdFusion执行时间?

2)你应该使用什么ColdFusion代码来正确地对getTickCount()执行时间进行基准测试? 3)您应该提供哪些系统信息,例如CF引擎,版本,标准版/企业版,数据库等?

+0

提供有关您想了解的内容的更多信息。识别瓶颈?比较几个不同选项的性能? – orangepips 2011-04-01 15:14:14

回答

0

1)在CF管理员的调试设置中,可以打开启用请求调试输出,该输出会在每个页面的底部输出运行时和其他调试信息。如果你想查看查询,这也很有用。如果你想使用定时器,你必须在调试设置中选择定时器信息(对于热分钟来说,挂起它)。

2)您可以使用timers来定制执行时间的基准。有四种类型,内联,外部,注释或调试,每种对应于输出的位置。在内联中,它将在您的代码周围创建一个小框(如果其为.cfm)并打印总运行时间。其他人将在CF管理员打开的底部输出中打印。

3)我真的不知道你应该提供什么。希望我可以帮助更多。在我看来,越多越好,所以我会说:P

0

关于@ mbseid的回答,请求调试会为任何请求增加大量的处理时间,尤其是在您使用CFC时。我建议您关闭请求调试并在页面的顶部和底部使用getTickCount(),然后花点时间来渲染该页面。这将使您更仔细地了解代码在生产中的表现。

2

我们做的是:

  • 在的Application.cfc的onRequestStart() - >设置节拍计数值,增加REQUEST范围。
  • 在的Application.cfc的onRequestEnd() - >设置节拍计数值,从中减去第一个值来获得毫秒总处理时间
  • 然后我们有一个设定的阈值(比如200毫秒),如果没有达到这个门槛,我们会记录在数据库表
  • 记录通常我们会记录URL查询字符串,脚本名称,服务器名称等

这可以给特定的网页成效随着时间的推移非常有用的信息。这也可以很容易地绘制,所以你可以看到,如果一个页面突然开始采取5000毫秒它正在采取300ms的面前,那么你可以检查SVN,看看有什么变化做了:)

希望帮助!