是否有替代YSlow的Perl?

时间:2010-07-04 17:48:55

标签: python perl firefox yslow

我想在Perl中使用一个工具来收集页面加载的有用统计信息(例如,下载时间/速度,CDN信息,标题,dns查找,压缩)

有人知道是否存在或者是否有地方可以了解如何制作一个?

2 个答案:

答案 0 :(得分:1)

您可能需要尝试WWW::Mechanize::Timed,它会扩展WWW::Mechanize模块。 :: Timed功能将允许您收集有关您的请求所需时间的信息。底层:: Mechanize模块本身是LWP :: UserAgent的子类,可以让您访问您的响应,包括标题,正文内容和图像。从这些你可以计算总页面“权重”,请求数量等。这不包括YSlow所做的一切(暴露gethostbyname底层的DNS内部将是一个很好的技巧!)但我希望它是一个开始的地方,如果我我们理解你的问题。

答案 1 :(得分:0)

您可以在分析器下运行perl CGI(或任何perl程序)几次,并扫描共性。我还没有看到像这样的基于Web的界面,但如果您可以控制perl方面的东西,那么文档就在这里:

http://www.perl.com/pub/a/2004/06/25/profiling.html

它基本上归结为使用-d:DProf运行perl程序,然后在完成后,在同一目录中运行dprofpp:

# perl -d:DProf ./foo.pl
# dprofpp

更新

是的,这与协议分析不同,正如下面正式指出的那样,但perl没有其他选择。如果你试图找到缓慢的perl部分来自哪里,perl perl是一个很好的起点。像YSlow这样的产品将跟踪它的纯协议方面,无论CGI是perl还是php或python。

就个人而言,我用它来描述我的django站点,它是在python和flash中,我将它们与系统的协议部分分开,我也使用YSlow。

此外,还有“ddd”的perl插件,它至少会使其成为图形化的:

http://www.gnu.org/software/ddd/

很抱歉,如果这不能解决确切的问题,我想知道是否有一个perl接口来整理这个,但我知道这是我开始寻找的地方......