在 perl 中分析 IIS 网站

Posted

技术标签:

【中文标题】在 perl 中分析 IIS 网站【英文标题】:Profiling an IIS website in perl 【发布时间】:2014-07-09 09:29:18 【问题描述】:

我正在尝试使用 Perl 来分析我必须在 IIS 中工作的网站。该网站使用Catalyst。我正在使用Devel::NYTProf 对其进行分析。

默认情况下,配置文件写入./nytprof.out。我无法访问用于启动 perl 的命令行,也无法传递参数(我使用 use Devel::NYTProf 在我的 perl 文件中启用分析)。

但我找不到文件……你知道它在哪里吗?如何以更好的方式使用 NYTProf 来分析我的网站?

【问题讨论】:

【参考方案1】:

我假设你的意思是 IIS。

您是否检查过运行 Web 服务器的用户是否具有对可能文件夹的写入权限?它用于以 IANONUSR (IIRC) 或类似方式运行,出于显而易见的原因,它具有非常受控制的权限。

IIS FastCGI 模块允许您为 FastCGI 进程设置环境变量,这应该允许您为 NYTPROF 设置 out_file。如果一切都失败了,您可以在 NYTPROF 中破解 Run.pm 并以这种方式更改位置,但至少您知道它试图写入的位置。

我向你的努力致敬,我可能只是将应用程序移植到 Linux 下运行。第一次让 NYTProf 在 Linux 下工作已经够难了,特别是因为进程必须正常终止,所以当我获取特定 URL 时,FastCGI 进程添加了一个方法来使它们死掉,我会一直获取该 URL 直到所有进程都完成死了。

也就是说 NYTProf 在 Linux 上的努力是值得的,它能够追踪一个占用大量 CPU 的正则表达式,并且在 99.9% 的情况下甚至不需要调用它。在 Windows 上的体验是“分叉”是性能杀手,但我认为微软从我的 IIS 时代开始就修复了这个问题。

【讨论】:

好吧,我别无选择,服务器是 Windows 2008,是我们的老板做出了这个选择……不过还是感谢您的反馈 :)

以上是关于在 perl 中分析 IIS 网站的主要内容,如果未能解决你的问题,请参考以下文章

PowerBI从SCCM数据库中分析数据和KPI展现

2003系统配置IIS+CGI环境,装active perl提示安装不了的解决办法

以管理员身份运行 cgi perl 脚本

带宏的excel无法在sharepoint上显示吗

linux日常笔记5

Linux参考笔记 4