王强李亭孟浩华
(国网湖北省电力公司信息通信公司武汉430077)
基于流量分析的电力企业应用性能监控系统的设计与实现
王强李亭孟浩华
(国网湖北省电力公司信息通信公司武汉430077)
随着大数据技术的发展,电力企业也正在逐步推进信息化改革工作,其中重要的内容就是将原先分散在各个地区的业务管理系统集中起来,进行统一的部署和调整,从而大大节约建设和维护成本,同时提高业务系统的运行效率,但也带来了网络稳定性下降等问题,影响了用户体验。论文首先分析了目前电力企业信息系统存在的问题,在此基础上利用电网系统在业务流量方面的优势,采用Network Insight模式,设计并实现了一款新的基于流量分析的应用性能监控系统,并充分借鉴交互响应性对业务性能的重要意义,采用了APDEX对用户的满意度进行评估。经过实践证明,该系统有效的提高了电力企业在应用性能方面的监控水平。
流量分析;用户体验;交互模型;APDEX;应用性能
Class NumberTP393
进入网络时代以来,经过十几年的发展,各种类型的网络已经同我国企业的生产经营、百姓的生活娱乐和信息通信紧密相关,网络已经逐渐成为了最重要的信息传输媒介,因此,无论是运营在各个企业和机构内部的内网业务系统,还是面向公众使用的各种应用服务类互联网站,其运营和维护水平和服务质量都会对本单位的工作效率、业务利润甚至公众形象产生不可替代的影响。因此,加强电力企业的应用性能监管工作,努力提高用户满意度,对于电力企业的长远发展和现实利益而言是非常有必要的。
另一方面,从用户角度来看,各种不同类型的应用终端发展迅速且丰富多样,不同的应用服务带来了数据复杂度的提高,加上应用服务范围不断扩大,导致数据中心时常需要远距离监测并处理差异性很强的大规模数据,在此情况下出现的性能问题,解决起来非常麻烦,通常需要数个员工的通力合作才能实现,且解决方案较为单一,通常仅仅是重启相关应用,甚至是重复服务器,严重影响了用户的体验度。若需要更进一步地对故障点和故障原因进行准确查找与定位,则会导致高昂的维护成本,其原因在于传统的监控系统往往是单点式的,即一套监控软件只能针对某一特定区域的业务系统提供服务,且无法对该业务系统提供的应用服务的性能好坏进行感知,从而也无法实现对应用的可视化管理,这极大地降低了网络应用服务系统的可维护性,因此迫切需要对其进行改善。
近十年来,国内电力企业正以前所未有的速度发展和扩张其业务领域,尤其是大数据技术和云技术的广泛应用,更为电力企业的发展增添的新的强大动力。在此过程中,国家电网公司出于减少重复建设、降低运营成本和提高系统维护强度等目的,正逐步将分散在各区域、省公司的业务系统集中一级部署,大量原本分散在各地,由其本区域单位进行分别管理的关键业务和应用必须重新采用统一的管理和监控方式,但由于各分部、省公司地域、网络的配置、管理运维等因素的差异,导致承载在基础架构、WEB应用、中间件和数据库上的各种数据在处理过程中的复杂度大大提高了,同时针对现有二级部署的业务系统也缺乏相应的应用系统精细化运维的工具和手段;另一方面,从用户角度来看,这种大范围内的差异性也会导致终端用户对网络中断、应用卡顿、响应速度慢等问题无从定位,影响最终用户的应用体验。经过分析和总结,目前电力企业在应用性能管理方面存在的问题有以下几点:
1)缺乏对用户真实体验的有效反馈
在电力企业不断推进信息化改革的过程中,大量的资源和经理被投入到了服务器系统的铺设和对大量数据资源的维护工作上,为此也增设了许多网络监测系统,以实现对客户端、网络传输和数据库的性能执行实时化监控,但依旧缺乏对用户真实体验的直接反馈和评测,其后果就是随着应用服务规模的不断扩大,用户对应用服务响应缓慢、网络卡顿的抱怨不断增加。
2)故障信息采集效率低下,处理时延过大
各个应用服务系统和数据库系统分散于不同区域,且各个系统间关联复杂,涉及环节众多,而监控系统则彼此间缺乏统一调配,一旦发生了故障,或应用服务出现了问题,在进行原因查找时往往是网络、系统、数据库、应用服务器各自独立进行,这种方式导致搜寻工作即使发现了异常情况,也无法快速认定其为故障根源,还必须同其他系统进行多次反复沟通才可判断出大致的范围,从而大幅延长了处理时间,用户体验度收到了严重的影响。
3)故障原因定位取证难,责任归属难以确定,导致各部门相互推诿
由于各个监控系统独立工作,缺乏统一监管方案,使得发生事故后,分析和诊断缺乏有力的依据,更无法准确得到故障现场溯源数据,给事故定责带来了非常大的困难。作为事后诊断工作,其手段和依据往往被局限在设备日志和交易日志等记录方面,这对精确定位故障原因而言显然是不够充分的;另一方面,即使通过与其他系统间多次反复的沟通之后,得到了故障现场数据,由于数据来源的复杂性较高,导致数据的可阅读性非常差,分析员往往要花费很长的时间和精力才能在海量数据中找出问题所在。
如前文所述,除了监控系统性能不佳,响应速度较慢以外,电力企业目前最大的服务质量问题就在于缺乏对用户满意度的合理评测,尤其是无法确认响应时间的变化对用户满意度的影响关系,从而导致难以精确配置相关资源以改善应用服务水平。本设计采用APDEX来改善这一问题。
3.1 APDEX特性
应用性能指数(APDEX)是根据用户使用效果来测量和汇报用户对应用性能的满意值一种标准化的方法,该方法在应用性能管理领域首次将用户体验与应用性能联系在了一起,并提供了统一的度量值。在多种待选的测量参数中,响应时间可用来描述形式多样的被控对象性能,并且本身的量级变化范围也最广,因此APDEX针对电力企业应用服务所采用的统一度量指数通常都是以响应时间为依据的。该度量指数具有以下几点特性:1)真实性,即该度量指数能真实的反映应用服务在某一方面的性能信息;2)广泛适用性,即该度量指数确实可被当做一般标准来采用,而不仅仅是针对某种应用才有效;3)取值有限性,度量值只能在规定的范围(0~1)内取值,保障指数的可阅读性;4)直观性,可通过度量值的大小直接判断出目前系统提供的应用性能,0为最差,1表示最完善;5)一致性,即针对某种被测对象,多种不同的测量方法得到的结果应保持一致,从而保障测量的准确性和可靠性。
3.2 ADPEX交互模型
为了合理地使用APDEX来反映当前应用服务系统实现的应用性能,监测系统必须对系统响应时延进行精确的测定,并以此为依据计算出准确的APDEX值。本设计在APDEX分析模块中,采用了分层实现的模式,将整个响应时间按照七个功能层耗时来分别分析和描述,具体如下:
1)会话层
即客户端与应用服务器端为了某个应用服务而维持的会话所持续的时间。
2)进程层
该层负责系统与用户之间的交互,包括从用户那里采集数据,以及向用户反馈结果等信息等所花费的时延,当然,用户接受信息和输入指令所花费的时间为主要部分。
3)作业层
在作业层的时延是指完成某个用户指令所耗费的时延。即在中断模式下,用户录入相关指令,传输至服务器端后,经过一系列的操作,最终将系统响应发回客户端,使之可以继续执行下去所耗费的总时延。
4)表示层
从客户端与服务器端之间的关联来分析,一个进程的耗时就是客户端与服务器端之间的多次请求和应答耗时加上分析计算耗时所形成的总时延。在请求驱动的环境中,大半的业务进程都需要发送请求以及要求对方进行应答,此类交互环节显然会增加作业完成的时间。
5)协议层
协议层通常为表示层服务,将上层的操作解构为在网络中使用的传输协议,从而完成在对等层之间数据通信,这一过程也会消耗一定的时间。
6)数据层
数据层负责将查询到的数据提出,并按照协议层制定的规程进行数据封装,得到的数据包是客户端与服务器端之间最小的通信单元。
4.1 定义应用性能目标
在对服务系统进行分层解析后发现,应用响应时间可被描述为系统与客户端之间完成一系列交互后,实现了某个阶段性作业目标,反馈用户可进行下一环节的耗时总和。这一时延与用户的体验度相关紧密,在采用APDEX进行评测之前,必须先设定相关的目标区间,来给出用户满意程度的基准边界。首先设定目标应用响应时间的开始边界T和结束边界F,其中F=4*T,这两条边界分别隔开了满意用户、容忍用户和失望用户三种不同的测量样本,如图1所示。
图1 目标性能区间分布
1)满意区间
该区间是指系统响应时间大于0且小于或等于T。用户在该区间内对接受的应用服务性能感到满意,几乎没有察觉到网络存在顿挫现象,用户操作流畅感良好。
2)容忍区间
响应时间处于T到F之间时,随着评测值的增加,说明用户对当前接受到的应用服务性能逐渐产生了不耐感,但仍处于可接受范围内。在此区间内,网络顿挫明显存在,但发生次数不多,单次时延长度有限,用户感到与系统之间的交互存在了一定的困难,给正常的工作带来了一定的影响。
3)失望区间
响应时间大于F。随着响应时间的继续增加,超过了用户能忍受的边界值F时,用户的体验度大幅下降,在使用系统应用服务时频繁的感受到顿挫的发生,且等待时间变得越来越难以接受,用户相当多的一部分时间都被消耗在等待状态中,在此情况下,用户甚至可能取消整个作业并退出该应用服务系统。
4.2 计算要素的确定
为了得到准确的评测值,APDEX在投入使用前必须收集以下几种信息,从而建立合理的评测指标。
1)预先设置报告组
报告组是APDEX计算分析的参照依据,即一组预先选定的基准样本,数量没有特定的要求,可以仅有一个样本,也可以有多个;可以是重新测定修改后的样本,也可以将其他同类型的报告组直接重复使用。但无论来源如何,报告组中的样本应该有以下几个内容:
(1)样本类型:即报告组中的样本是针对何种作业(链)而测定得到的。
(2)应用场合:包含常用的应用类型,比如IM、SNMP、TELNET等。
(3)用户组:按地理、机构等方面定义各类用户组。
(4)间隔时间:用以设定计算频率,频率高则输出的精确度较好,但时延相应增大。
2)设置临界值
即如前文所述,预先设置性能区间边界值T和F。本系统采用T值为默认设定值4s。
3)确认测最样本个数
计算APDEX值时,报告组中样本数量虽然不作要求,但一般对于应用性能的评测,样本数量应当至少满足100份,少于此数量的报告组主要适用低带宽状态或为诊断故障提供数据。
4.3 计算公式
假设,报告组在满意-容忍区间内定义一组测量采样,目标临界值T(s),那么容忍-失望区间的临界值F=4*T(s);随后以响应时间为监测对象,将得到的结果根据样本边界划分到各个区间内,然后根据各个区间内样本的数量进行计算,其公式为
上式中,满意值即为满意区间内的样本数量,容忍值为容忍区间内的样本数量,由此可计算出指数值,观察可知该值必然是位于0~1区间内的,其对应的用户满意度分布如图2所示,根据该图,就可计算得出用户对当前应用服务的满意度。
图2 APDEX取值分布图
上文中针对响应时间建立基于APDEX的用户满意度的评测体系只能满足对应用服务器性能管理的一个方面,可通过评测结果来及时的调整应用服务管理策略,以提高应用服务水平。但事实上,采用响应时延来对应用服务系统进行监控是不太合适的,而是更应该对导致响应时间变化的关键因素-流量变化进行实时监控和管理,才能实现提前预判、提前介入的目标,同时也能够实现对故障的精确定位。因此,本设计通过对流量的及时监测和分析来完成对应用服务系统的性能管理。图3给出了从高层的业务量到底层流量之间的转化,以及由此产生的通信时延和可能发生的故障。
5.1 Network Insight监控系统设计
从用户发起对业务系统的访问,到收到该访问的业务处理结论,通常会经过DNS查询,基础网络设备、安全设备和应用交付的转发,以及Web服务、应用服务、中间件、数据库等应用组件的信息处理。这些组件的性能优劣,都直接影响业务信息交互的实时性、准确性和稳定性,因此,要监控和管理应用和业务的性能,就需要对这条信息传递和处理链条上的每个组件乃至代码进行监控和管理。其中使用网络镜像技术,针对OSI网络模型的二至七层中的数据流,应用组件,用户感知,网络质量进行安全且全面的监控,分析和管理,称之为应用感知型网络性能管理。
Network Insight解决方案使用网络包镜像以及二至七层协议分析技术,在不影响客户应用系统运行的情况下,提供关键应用的全天候全方位视图,让应用的管理运维人员随时感知系统健康和客户体验,及时发现问题,快速定位问题,其结构如图4所示。
图4 Network Insight系统构成
如图4所示,Network Insight主要是由一台探针设备Probe构成,Probe中包含了数据采集组件,存储组件和报表查看组件三部分。它架设在数据中心,数据中心的各个交换机镜像出来关键服务器的流量后接入探针设备,探针设备解析各个协议后将协议及其统计结果发送给存入存储设备并计算各个维度的统计数据,以及业务基线,以Web页面的形式提供网络拓扑、各类报表、仪表板等展示。多台Probe可以通过Manager集中管理,集中展现,支持分布式部署方式。
5.2 系统功能设计与应用
本系统以流量分析为基础,针对电力企业的应用性能服务进行质量监控,其主要功能如表1所示。
表1 应用性能监控系统功能表
由表1可见,本系统的主要功能分布于三个方面,分别是链路通信性能、应用组件性能和URL交易性能。由于业务环节不同,其监控对象和监控制指标也有所差异,图5给出了本系统的所有监控对象,而图6则是其中HTTP实时会话的监控结果。
图5 应用性能监控对象
图6 HTTP实时会话监控图
除了以上监控功能外,本系统还根据前文所述APDEX机制,设计了基于平均响应时间的应用性能指数评价功能,清晰地反映了用户对系统提供的应用服务的满意程度,为下一步调整改善工作提供了有力的参考。如图7所示。
图7 应用性能指数分析图
影响用户访问体验的因素是多样的,响应时间无疑是最重要的一种,而在业务执行的过程中,对各个环节响应时间影响最大的则是网络流量的变化。本系统以Network Insight模式为基础,设计并实现了对链路质量、流量分布、应用性能、后天数据库等多因素的关联分析,并利用APDEX机制对用户的满意度进行及时的评测,为IT管理人员提供真实可靠的参考和依据,使之能够更加合理地调配资源、调整系统结构,为用户提供更高水平的服务。
[1]李爱民.Web信息系统软件可靠性测试初探[J].科技信息,2007,03:556-559.
LI Aiming.A preliminary study on the reliability test of Web information system software[J].Science and Technology Information,2007,03:556-559.
[2]黄鹤.Web应用程序的性能测试研究及其应用[D].成都:西南石油大学,2006:65-66.
HUANG He.Research and application of performance testing of Web application[D].Chengdu:Southwest Petroleum University,2006:65-66.
[3]张熙.Web应用性能优化模型及测试框架的研究[D].南京:南京航空航天大学,2008:51-54.
ZHANG Xi.Research on performance optimization model and testing framework of Web application[D].Nanjing:Nanjing University of Aeronautics&Astronautics,2008:51-54.
[4]Xu Lei,Xu Baowen.Research on the Analysis and Measurement for Testing Results of Web Applications[J].Second International Workshop on Web CoCyberworlds,2005:559-565.
[5]梁晟,李明树,梁金能,等.一种模拟驱动的Web应用程序性能测试方法[J].计算机研究发展,2003,40(7):1069-1075.
LIANG Sheng,LI Mingshu,LIANG Jinneng.Performancetest method for analog driven Web application program[J].Computer research and development,2003,40(7):1069-1075.
[6]李广建.Web信息系统导论[M].北京:高等教育出版社,2008:144-147.
LI Guangjian.Introduction to Web information system[M].Beijing:Higher Education Press,2008:144-147.
[7]Sebastian E,Gregg R,Srikanth K.Leveraging user-session data to support web application testing[J].IEEE Transactions on Soft-ware Engineering,2005,31(3):66-67.
[8]董娜.Web系统性能测试的研究[D].广州:暨南大学,2008:32-35.
DONG Na.Research on performance test of Web system[D].Guangzhou:Jinan University,2008:32-35.
[9]Armbrust M,Fox A,Griffith Retal.A view of cloud computing[J].Communications of the ACM,2010,53(4):50-58.
[10]王锐,陈丽.应用性能管理的设计方法研究[J].计算机应用与软件,2009,26(9):157-159.
WANG Rui,CHEN Li.Research on design method of application performance management[J].Computer applications and software,2009,26(9):157-159.
[11]Bowling J.Zenoss and the art of enterprise monitoring[J]. Linux Journal,2008,11(172):6-8.
Design and Implementation of Power Enterprise Application Performance Monitoring System Based on Flow Analysis
WANG QiangLI TingMENG Haohua
(Information Communication Company State Grid Hubei Electric Power Company,Wuhan430077)
With the development of large data technology,electric power companies are also gradually advancing the reform of information technology.One of the most important content is gathering the business management system previously scattered in various areas and carrying out unified deployment and adjustment to save construction and maintenance costs,while improving the operational efficiency of the business system,but it also brings the network stability and other issues which affect the user experience. This paper analyzes the existing problems of the electric power enterprise information system and utilizes the advantages of power grid system in traffic flow to design and implement a new performance monitoring system based on traffic analysis by using Network Insight model.Finally,the significance of the interactive response to the business performance is fully utilized,and the APDEX is used to evaluate the satisfaction of the users.It has been proved that the system can effectively improve the monitoring level of the application performance of electric power enterprises.
flow analysis,user experience,interaction model,APDEX,application performance
TP393
10.3969/j.issn.1672-9722.2017.06.033
2016年12月6日,
2017年1月28日
王强,男,硕士,高级工程师,研究方向:信息系统运维与安全管理。李亭,男,高级工程师,研究方向:信息通信专业管理。孟浩华,男,硕士,高级工程师,研究方向:信息安全。