衡量最终用户应用程序性能

我最近意识到一个问题,我们有一个代理configuration问题,导致用户浏览网站的性能下降。 由于我们访问开发和testing环境的方式,我们的大多数IT人员都有一个稍微不同的configuration,所以我们得到了一个模糊的“互联网是慢的! 解决之前的投诉。 几个月前,我们遇到了一个问题,即应用程序中的一个错误会导致很多PC上的性能下降,但是我们很难检测到它。

这个问题困扰着我,因为这是我们完全可以主动解决的问题。 问题是,我们没有任何工具可以知道我们的用户每天都需要花费5秒钟或5分钟的时间才能完成任务。

有没有人知道一个免费/廉价的工具,可以让我们脚本这样的事情:

  1. 加载Internet Explorer,启动应用程序
  2. 转到google.com,计算页面加载时间
  3. 去example.com,定时加载页面
  4. closures浏览器

我希望能够让脚本每15分钟做一次这样的事情来运行开发基线,并找出“慢”对用户意味着什么。 互联网只是一个例子,我认为这对于内部和其他应用程序也是有用的。

在我看来,应用程序本身应该支持使用任何标准监控套件来监控这些types的指标,包括设置默认警告阈值^^但是,大多数应用程序不这样做,我猜想有一些值得注意的例外,如Exchange与System Center Operations Manager等上…

…在这种情况下,我会更像一个用户和可用性研究问题。 定期对用户工作stream程进行过度testing将是一个有用的开始,即使它不是自动化的。

尽pipe它需要包括各种可以减缓PC爬行的指标(如CPU和内存负载,磁盘和networkingI / O负载和模式等)就像服务器监控一样。

我了解开发和testing环境访问,但我强烈支持具有相同的标准图像,networking上的第一线支持人员,以及其他用户的第四名 – 如果这是不可能实现的每个人部。

使用远程pipe理服务器/多用户工作站进行日常pipe理工作是一种简单的方法,不必依靠本地PC以特定方式或使用特定工具进行设置。

我真的很喜欢在用户注意到任何事情之前监控缓慢的想法。

为了方便起见,我会尝试将其与您已经使用的任何监控软件(Nagios等)绑定。

黄瓜框架看起来很有趣 – http://cukes.info/有一个Nagios插件。 (Google“Cucumber-Nagios”)

您还可以使用Powershell或其他脚本语言编写Internet Explorer脚本。 不过我总觉得更麻烦些。

如果您需要了解您的网站的性能,并希望在以后诊断问题,那么您需要networking监控软件。您对networking监控了解更多

免费的,wireshark是好的。 对于商业用途,Capsa适合。

你看过惠普SitScope? 它不仅会提取系统信息,包括来自代理服务器的潜在SNMP信息,还可以运行Web应用程序性能监视脚本。 此应用程序抽样技术是HP LoadRunner和HP业务可用性中心的共享技术组件,它基本上是完成脚本化任务的无GUI GUI浏览器。 警报和报告内置到SiteScope中。

你也可以在脚本基础上做的事情是看看在请求的开始和结束周围使用CURL和一些定时器。 PCODE可能看起来像这样

  1. 将开始时间设置为MILLISECONDS
  2. 发行请求页面下载使用curl
  3. 让结束时间到MILLISECONDS
  4. 从结束时间减去请求时间的开始时间
  5. 推送请求时间收集服务器
  6. 如果请求时间超过SLA值,则向组发送通知电子邮件

你可以很容易地使用一个时钟任务来运行上面的每十五分钟左右。 使用您最喜爱的脚本语言来执行操作。