云计算、移动互联网的快速发展正在引发一场新的变革。随着IT系统、业务环境的复杂性增加,传统的IT运维方式已经不能适应企业快速发展的业务需求。企业不再只着眼于硬件开发,而是对应用技术、运营维护的需求越来越高,这给企业的应用性能管理带来新的挑战和机遇。
不久前,云智慧(北京)科技有限公司COO潘涛与51CTO记者谈到,目前国内很多公司IT架构与业务是割裂的,往往是根据常规运行经验来制定业务计划。但这种方式效率极低、误差很大,可能导致网络和服务器闲置或过载。下面让我们一起看看潘老师和他的团队,在为企业提供这些问题的应对方案的过程中,有着怎样独到的见解。
方向:移动互联时代的应用性能管理应该转向立体化
随着移动互联网的发展,传统的PC用户逐渐转向APP。潘涛告诉记者,虽然现在的APP平台已经开始提供一体化的APP开发环境,但传统企业在这个过程中仍然前进的比较艰难。
支撑移动互联网产品和服务的是软件和数据,其背后是所构成的代码。代码的实现很复杂,那么交付和持续优化就变得非常重要。在此之外,传统行业的客服跟踪在移动互联网会涉及问题反馈、问题定位,***确认具体错误和负责人解决问题。在这种冗长复杂的问题定位和处理流程下,即使问题得以解决,用户也很难得到好的体验。
要解决这个问题,只有确保自身IT支撑系统稳定高效的运行,这就需要强有力的IT运维管理体系,来时刻监控和管理IT环境各组件的性能质量。目前很多时候,我们都将网站监控、服务性能监控、服务器监控、网页性能管理等割裂开来,但实际这些组件相互间对性能影响的是存在关联的。如果对它们独立进行监控管理,不仅使运维人员工作繁多,也很难快速、准确地对问题发生的环节定位。
为解决这个问题,云智慧的做法是,提供端到端的性能和可用性监控的立体化APM方案,来将这些独立的监控项目整合在一起并建立关系,做到实时监控并快速定位问题。这也开创了国内市场的先河。
潘涛告诉我们,IT应用的最终实现就是从用户端发起到服务器最终执行的过程,也就是我们常说的end to end。云智慧APM将IT各组件性能的监控分为六段,覆盖从用户、内容传输、防火墙、服务器、服务商内网数据库和存储的每个环节,能够实现代码级问题定位和实时数据监测分析,对外部容区性能的RS并发率、吞吐率等关键性指标,提供准确的监控数据。不论是移动APP还是Web应用,都可通过自身功能构建起立体化的企业风险预警、解决、优化方案。
根源:后端接口问题才是改善用户体验的关键
越来越多的应用服务封装成一系列的API开放出去供第三方使用,很多在线服务应用都可以通过API数据接口调用的方式快速获取。因此,应用接口数据服务性能的差异会直接关系到业务运营质量。前端的性能问题可能影响到某个平台或是部分用户,而如果服务端的接口调用出现问题,则会影响到所有用户的服务质量。这是最容易被忽略掉的问题,却也是非常关键的问题。
因此,整个应用交付数据接口的一致性、完整性和正确性,才是问题的根源,只有识别、区分、解决和控制了这些问题,才能从根本上消除和改善最终用户体验质量。在解决手机这一端应用问题的时候,云智慧更多的是采用API的方式,基于目前通用的移动端和服务器端的数据通讯的标准接进API性能的监控,快速定位和解决问题根源。
- 首先通过收集和诊断数据信息,来测量应用接口性能是否可用。
- 再针对响应时间和可用时长统计分析来进行可用率的统计,辨别数据请求和返回是否正确,实现从API和数据支撑层来保障用户的数据通信运行逻辑始终符合预期结果。
- 具有强大的数据验证引擎,可以支持JSON、XML甚至Text、Response Status验证,实现跨多平台的应用。
判断:基于数据流间的逻辑找准问题节点
现在,运营人员在监管过程中常常陷入这样的痛苦:虽然不断收到告警,但是究竟该处理什么问题,运营人员却很难准确和迅速定位。
如果通过对数据流的逻辑关系加以分析判断,来给系统架构中的交换机、路由器、防火墙等贴上不同层级的标签,采用分级的告警机制,就可以大大减少运营人员的痛苦了。如果从一级到十级划分,***级是最前面的防火墙。***级发生故障,后面的指标肯定都不通了,如果都报警,运营人员肯定吃不消。当重要级别高的部分发出告警了之后,底下的告警我们就不用去看了,只要去做它的维护就行了。分层的告警机制可以解决现在大家收到的警告太多,却对怎么解决问题,解决哪里的问题无从下手。
潘涛告诉我们,云智慧在做到分级的故障分发之外,还可以通过对高凝指标数据之间流逻辑关系的分析,来提供更加智通的监控和告警方案。用户可以根据自己的情况和需求去编制告警策略,根据它的逻辑去编制,这样一旦出现故障和紧急情况这种方式很容易帮他去找到问题的节点,而不是像现在一堆告警却不知道到底处理哪个。而且,根据故障的紧迫和重要程度,也可以选择通知不同的对象,是先通知我们的运维人员,还是先通知网站的CTO。都可以在定制策略中通过设置告警阈值,来进行灵活的自定义告警设置,来帮助用户更加及时的捕捉突发变化,进行性能调优。
#p#
探索:利用大数据技术实现对问题的预见
大数据技术的迅速发展,对性能测试实时性和持续性问题的分析和发现带来很大的帮助。目前,云智慧也在基于大数据技术,不断完善对监测故障预见性课题的研究。潘涛告诉我们,两个端所有的新闻数据,包含故障的数据,和运行正常的数据。如何挖掘这些数据的价值,来进行预测的体验,是非常重要的。
这里面有很多预测算法,比如说根据某个时点的流量,将用户设备的储存性能,物理性能和数据库的性能中的数据提取出来,来预见优化方案,假设再有一个分点的时候机器可能应该加什么,是在前面继续做LB的均衡负载呢,还是说应该提升你的储存的硬件的配置或者物理级的配置,这实际是在一个大的模型里面。只有通过数据的大量积累,而且历史曾经出现过的这种问题多的时候,这个模型才会更加完整,因为这些数据本身一定是有相关性的,但又未必必然。有时你的流量很大,服务负载很低;但是有时候你的流量很小,负载却很大,这里面的问题到底在哪儿呢?硬件还是架构本身,还是代码写得不好?到底是怎样的逻辑关系在起作用,云智慧现在还在探索预测算法,也是希望大家共同贡献智慧的部分。
有待完善:国内云监控市场发展现状
监控不是什么新鲜事物了,IT监控在有了Windows这种软件以后就开始存在。而在潘涛的眼中,这个发展多年的市场里还有两个问题,值得大家探讨。
***个就是立体化的监控。现在大多数产品往往关注的还是在服务器端,缺乏的立体化子监控的提供方案。云智慧开创的六段的立体化监控对这块的发展提供了很好的价值。
第二个就是监控意识的提高。纵观全国大概共有300多万个网站,随着云智慧服务的不断加深,目前已经对国内80多家网站提供了基于SaaS的APM方案。而在国外基本上80%的网站都有监控服务区,我们虽然说已经有了十几年的历史监控,但是还是不够成熟。这个市场是非常大的。对于APM的发展,它的预见性是最重要的,这个预见性很可怕又很神奇,有些东西用户可以一起参与。因为收集到的样本越多,通过实时数据构建起来的预见模型和算法就更完善。所以我们国内监控市场的发展,首先要基于大家监控意识的提高。
趋势:PaaS发展带来新的市场潜力
APM概念真正意义的提出是在2008年,当时,国内企业在这一领域的涉足还很少,少数几个传统的IT巨头尽管拥有类似的服务,但并不能满足中小企业的需要,而且由于当时还处在套装软件阶段,SaaS的理念才刚刚兴起,基于SaaS的APM市场更是一片空白。
据潘涛介绍,云智慧提供的服务已经构建在SaaS之上,是在IaaS平台上客户端的一个SaaS服务。从今年的发展趋势来看,PaaS发展速度更为迅猛。因为PaaS的好处在于,它的体系是成套的,能够给创业者提供一体化的服务,尤其是在手机APP的应用和游戏的应用上面是非常多的。
做为云智慧来说,提供的服务中本身既有公有的IaaS的部分,也提供功能性自建的服务,实际是一个混合的概念,这也是目前国内的主流态势。未来,云智慧虽然不会将服务迁移到PaaS上去,但是会有很多标准的开放的接口给大家提供,大家通过这些开放的标准的API可以集成很多的服务。PaaS平台的开发也会调用到这个接口。所以PaaS层的发展对于云监控服务是会起到推动作用的。
归根结底,大家首先关注的还是服务本身的能力以及对客户的可用性,另外很重要的就是用户的体验。在用户的体验里有几个纬度的指标,比如响应的时间,首页加载的时间,操作流程的时间,这都是很重要的客户体验的指标。“其实大家会越来越往往两端走,一端就是用户这个体验这端,还有一端就是你整个运行的这一端,这两端是很重要的。”