检查某个已知功能是否正常,综合监控是非常有用的,换句话说,综合监控会向你显示某件事情是否工作正常。
何时使用综合监控
综合监控和RUM是两种相互补充的技术,在Web应用的规模化运维中都扮演着非常重要的角色。但了解何时使用何种工具也很重要。
要想在用户实际遇到问题之前就对其有所了解的话,综合监控是很合适的。而且综合监控也适合于建立基线,因为可以定期运行综合监控,而不用考虑访客流量有多大。综合监控用于:
● 监控业务交易中的关键步骤,如目录页或评论过程。
● 对那些你无法控制但网站又依赖其运行的组件的健康状况进行监控,这样样的组件可能是 Facebook的粉丝页面、支付服务,或者表单工具。
● 在不同的环境中运行同样的测试。因为每次运行的测试都是相同的,对不同的城市或运维商进行比较,就可以了解某个地理区域是否很慢,或某个服务提供商宕机
注意,综合监控与加载测试(load testing)遵循同样的原则,但其目标并不是用大流量测试网站的承受力,而是评测网站的性能对于测试时的实际访客来说感觉如何。
综合监控的局限
综合监控服务很普通,而且也承受得起。假如你的网站还没有连接到Internet,可能就要部署自己的测试服务器。网上已经有一些可供选择的服务。在选择一项服务时,要考虑下面
是否易于记录与管理脚本?
测试脚本要与应用程序保持同步,因为应用的每个新版本都可能破坏现存的脚本,从而产生虚假报警。为了保持测试系统正常可用,你可能需要花费大量的时间对其进行维护。
能给出什么样的报表?
越高端的服务提供的报表越会有更多的细节。
报警是否与后台已用的监控工具兼容?
从外部世界获得的性能数据要发送给同一个的管理平台,即用以追踪后台健康状况的管理平台,从而可以借助这个平台对性能数据进行分析。常常有这样的情况,一个外部错误是
标志系统出现问题的第一个信号。
是否能测试到应用的所有部分?
现代网站包括文字消息、邮件注册、Twitter活动、HTTP5Websockets、服务器发送的事件、嵌入式视频、AJAX,以及使用 Flash、Flex、Java及 Silverlight开发的富互联网应用(RIAs),所以,在签下合同之前,一定要确信你了解了所有需要监控的组件。
测试是由脚本还是实际的浏览器来做?
有些综合监控服务会模拟浏览器向你的网站发送HTTP命令,然后记录结果。其他的则使用我们称之为浏览器木偶( browser puppetry)的方式,实际控制一个真实的浏览器。后者很贵,但却不会由于网站的变化而变得脆弱,因为测试脚本会操纵浏览器的DOM,而不仅仅是发送文本。
遇到错误时,会发生什么?
有些服务会记录错误的细节信息,捕捉到错误消息,就像在浏览器中看到的那样,并且触发另外的测试,如路由追踪,而其他的仅是发回报警消息。报告越详细,成本也就越高,但对于修复问题来说,却越容易。
配置综合监控
设置监控控相对容易,特别是如果只想监控一些关键页面的话。一般来说,只需要给出要测试的URL、测试时间间隔以及遇到错误时要采取的行动。
要是想做更多的监控,可能需要提供一个“中性”的用户账号,这个账号可以用来做测试,但不会对系统造成什么影响,还要提供会话参数以及其他细节信息,监控服务使用这些细节信息可以更好地模拟真实的用户访问。
要记住的是,综合测试也是要消耗服务器资源的。我们见到过这样的网站建设,来自综合监控脚本的流量超过了50%,这样的话,实际上是会降低访客的体验的。
本文地址://www.xrqsnxx.com//article/3344.html