我最近发现了一个问题,我们有一个代理配置问题,导致用户浏览网站的性能变慢。由于我们访问开发和测试环境的方式,我们的大多数 IT 人员的配置略有不同,因此我们最终得到了一堆模糊的“互联网很慢!” 修复之前的投诉。几个月前,我们遇到了一个问题,应用程序中的一个错误导致许多 PC 的性能下降……但我们很难检测到它。
这个问题困扰着我,因为这是我们完全可以主动解决的问题。问题是我们没有工具可以知道执行用户每天执行的任务通常需要 5 秒或 5 分钟。
有没有人知道一个免费/便宜的工具可以让我们编写这样的脚本:
- 加载 Internet Explorer,应用程序启动时间
- 转到 google.com,页面加载时间
- 转到 example.com,为页面加载计时
- 关闭浏览器
我希望能够让脚本每 15 分钟执行一次这样的操作来运行开发基线并弄清楚“慢”对用户意味着什么。互联网只是一个例子,我认为这对内部和其他应用程序也很有用。
在我看来,应用程序本身应该支持使用任何标准监控套件来监控这些类型的指标,包括设置默认警告阈值^^ 但是,我猜大多数应用程序不会这样做,除了一些值得注意的例外,例如使用 System Center Operations Manager 进行 Exchange 等上...
...在这种情况下,我更像是一个用户和可用性研究问题。定期对用户工作流程进行过肩测试将是一个有用的开始,即使它不是自动化的。
可以通过适当的性能监控来捕获应用程序在客户端上的性能下降,尽管它需要包括各种可以使 PC 慢下来的指标,如 CPU 和内存负载、磁盘和网络 I/O 负载和模式等等 - 只是就像服务器监控一样。
我了解开发和测试环境的访问权限,但我强烈支持至少让第一线支持人员使用相同的标准图像、网络等第四名作为其他用户 - 如果这对每个人都无法实施的话部。
使用远程管理服务器/多用户工作站进行日常管理工作是一种无需依赖以特定方式或使用特定工具设置的本地 PC 的简单方法。
我真的很喜欢在用户注意到任何事情之前监控速度的想法。
为了方便起见,我会尝试将它与您已经在使用的任何监控软件(Nagios 等)联系起来。
Cucumber 框架看起来很有趣 - http://cukes.info/并且有一个 Nagios 插件。(谷歌“黄瓜-Nagios”)
您还可以使用 Powershell 或其他脚本语言编写 Internet Explorer 脚本。不过,我总是觉得这更麻烦。
如果您需要了解您网站的性能并想稍后诊断问题,那么您需要网络监控软件。您可以通过以下方式了解更多关于网络监控的信息
免费的,wireshark 很好。对于商业用途,Capsa 是合适的。
您看过 HP SitScope 吗?它不仅会从您的代理服务器中提取您的系统信息,包括潜在的 SNMP 信息,而且您还可以为 Web 运行应用程序性能监控脚本。此应用程序采样技术是与 HP LoadRunner 和 HP Business Availability Center 共享的技术组件,它本质上是一个完成脚本任务的无 GUI 浏览器。SiteScope 中内置了警报和报告功能。
您也可以在脚本的基础上做的事情是看看在请求的开始和结束时使用 CURL 和一些计时器。PCODE 可能看起来像这样
您可以轻松地使用 chron 任务每十五分钟左右运行一次上述任务。使用您喜欢的脚本语言来执行操作。