应用性能管理的发展和应用
应用性能管理的发展和趋势
92%的被调查者人为系统可用性是首要的IT运维指标,其次就是性能指标,占到了80%
认为非常重要的IT运维指标
作为IT运维的关键指标,89%的公司使用系统可用性衡量IT系统状况。
性能指标(66%)和开放问题数量(51%)被作为衡量IT系统状况的指标
常被使用IT运维指标
理想和现实的差距
在所有的被调查者中,性能指标被认为是最难获取的指标。
其中认为最困难的占到了29%,第二困难的占到了74%。
26%
性能指标最难被采集
需要新的IT运维解决方案,帮助企业从IT系统的行为、状态、配置、故障和事件中,快速发现问题点,自动预判产生趋势和剖析商业运行。
解决性能问题是最消耗时间的
解决IT故障的常规路径
16%
45%
21%
18%
解决IT故障的风险
2. 人为和方法风险
1. 技术风险
Business
Development
Test
Production
C/C++
IT运维的三大困境
应用性能管理(APM)以真实用户体验为出发点,端到端业务系统健康管理
Applications
Firewall
Network
Switch
Load Balancer
Portal
Identity Manager
End User
Router
Web Services
3rd Party Applications
Databases
Mainframe
Database
Web
Servers
建立应用服务监控视图
关注应用交易性能
多段、多层数据关联分析
了解用户感知
了解业务最终交付状态
了解应用对业务的影响
端到端覆盖业务路径
追踪业务服务质量
快速诊断和定位故障
利用APM破解IT困境,加快系统修复时间
利用多种手段直接采集性能数据
实现对海量运营分析数据的高效存储
利用大数据技术,建立深度分析引擎
通过易于理解的图表,展示运营分析数据
采集
存储
分析
展现
APM的四个重要组成部分
IT性能数据指标三种采集方式
日志数据
系统日志,中间件日志,数据库日志,应用程序日志,种类繁多,分类、分析复杂
网络抓包
劫取所有服务器节点的网络数据包,对网络数据包进行分析,判断各个请求的响应时间。
字节码插装
通过对编译后的程序,如Java或.net 字节码文件进行插装,在程序执行过程中监测程序的执行,收集监测数据。
IT性能数据指标三种采集方式比较
日志 网络抓包 字节码插装
无需手动改动系统 √ √
不会影响业务系统性能 √
能监控用户真实体验 √ √ √
能分析代码级性能瓶颈分析 √
和业务系统直接相关 √ √
能减少冗余监测数据 √
大数据分析平台
IT系统实时运行状况
IT系统运行统计分析
IT系统运行预测
性能问题快速定位
MTTR
显著下降
APM与Big Data,MTTR的关系
APM通过减小MTTR,从而提高系统稳定性
MTTR(mean time to restoration, 平均恢复前时间)
=
MTTR
随着MTTR的减小,系统可用性和稳定性随之提高
加快发现问题和定位问题的时间,减小MTTR
(MTBF / (MTBF + MTTR)) X 100
平均故障时间
平均修复时间
15
应用性能管理软件的发展历程
IT Focus
以网络(网络速度、网络包等)为核心
代表厂商
IBM、CA、HP、Riverbed
以基础组件(服务器、数据库、中间件等)为核心
代表厂商
BMC 、北塔、Riverbed
以端到端的应用管理为核心
代表厂商
OneAPM、Precise、Compuware
1995
2000
2005
2013+
1st Gen APM
2nd Gen APM
应用复杂性
3rd Gen APM
Blueware TPM
Application-Centric
World
什么是应用?
最终用户发起一个请求,这个请求会触发一系列软件和硬件的执行来响应这个请求
软硬件的执行过程中的有些步骤的顺序是按照业务逻辑描述的,而不是计算机系统逻辑
多种软件算法在执行时互相协作。最后的执行结果被编译和组装成一系列数据的结果集
结果数据集通过软硬件被传输和展现到最终用户的使用界面上
假设一系列算法被执行完毕,它们就达到了终端使用者或终端使用社区的使用目的
Gartner定义Application是具备以上五个特性的算法的集合
新一代应用性能管理 (Application Performance Management)
真实用户体验管理
应用拓扑的发现与可视化
用户自定义事务分析
应用组件深度监控
IT运营分析
APM
①
②
③
APM核心功能(一)
IP地址?
哪些用户不满意?
浏览器类型和版本?
Who
Where
用户主要来自哪里?
哪些页面体验出现问题?
问题出现在哪里?
When
访问发生在什么时间?
错误发生在什么时间?
回溯到某个历史时间?
What
用户访问了什么业务?
调用了什么服务或页面?
什么服务/页面最慢?
系统发生了什么错误?
错误的原因是什么?
真实用户体验管理
日用户访问量趋势:
用户满意度趋势:
用户浏览器分析:
用户来源地域分析:
用户访问轨迹分析:
①
End-user experience monitoring (EUM) — The capture of data about how end-to-end
latency, execution correctness and quality appear to the real user of the application. A
secondary focus on application availability may be accomplished by synthetic transactions
simulating the end user.
19
APM核心功能(二)
应用组件深度监控
应用代码深度监控:
数据库深度监控:
JVM深度监控:
用户浏览器深度监控:
J2EE应用服务器
监控的业务系统
第三方应用系统
浏览器
智能终端
数据库
实现对与应用相关的IT组件的深度监控,包括浏览器、移动终端、中间件、数据库、应用、第三方应用组件等。
②
Application component deep dive — The fine-grained monitoring of resources consumed and
events occurring within the components discovered in application topology discovery and
visualization dimension. This includes the server-side components of software being executed.
20
‘购机赠话费’业务
APM核心功能(三)
IT运营分析
仪表盘
应用系统(BSS/OSS)
性能数据
业务数据
市场部经理
渠道代码
用户姓名
业务处理量
业务办理成功率
运营决策数据库
营业厅
网上营业厅
手机营业厅
个人信息
历史消费数据
哪个渠道对‘购机赠话费’活动的推广最有效果
多少新,老客户通过什么渠道参与了这个活动
参与活动的老客户历史消费情况特点
参与活动的新客户有多少是再入网客户
各个渠道业务受理的平均时间
大数据分析
业务运营仪表盘:
系统运营历史数据对比与趋势:
系统运营详细数据分析:
需要PS
③
APM核心功能(四)
应用拓扑的发现与可视化
浏览器、中间件、数据库、第三方应用,一个都不能少
调用、被调用;引用、被引用,全部都知道
时间花销是多少,统统掌握到
性能瓶颈来定位,一目知晓
应用逻辑拓扑图:
Application topology discovery and visualization — The discovery of the software and
hardware infrastructure components involved in application execution, and the array of possible
paths across which these components communicate to deliver the application.
22
APM的关键功能和性能要求
硬件设备
主机和操作系统
交换机、路由器
等网络系统
虚拟化设备和云环境
基础组件(数据库、应用服务器、消息中间件等)和服务(目录服务、邮件服务等)
应用框架(J2EE、struts、spring)
业务交易
APM
理想APM
行业趋势
BMC
劣势
在生产环境或者重型事务应用环境中,产品在深入代码级监控及事务跟踪相关的功能比较弱。如果没有消息队列监控和大型机监控这两个独有的优势,BMC 很难和 AppDynamics 抗衡。
为了理解应用性能问题产生的基本原因,了解网络性能数据和动态云计算的拓扑结构变得越来越重要。到目前为止,BMC 选择了不增加投资,而是依靠合作伙伴 Entuity 的方法来解决填补这个不足。
BMC的APM产品线中的产品之间缺乏关联,基本上处于一片散沙的状态,仅仅有一些点击整合和事件数据流入到BPPM产品。
Saas解决方案最初仅对 Akamai 公司的内容分发网络(CDN)顾客适用,对公共客户来水功能极其有限。Gartner认为 BMC 公司还会将 SaaS 和 CDN 用在 Akamai 的其它产品上。
优势
BMC Portal是最优秀的Single Agent模式的基础组件监控软件
BMC 对最终用户体验管理维度的界定有深刻理解,也促成了其对未来适用的数据包捕获技术的投资。
与其它监测产品相比,BPPM 的分析引擎使得其在的独特的综合分析平台上,能够找到数据的baseline和阀值。
由于 BMC 产品整合了完善的对大型机的性能监测能力,它能够提供性能表现的端到端视图。
产品整合了针对私有云的监测功能,因此其能够自动配置资源,并对在私有云平台上运行的软件进行可视化呈现。
BMC End User Experience Management (EUEM,最终用户体验管理) (前身为 Coradiant TrueSight)
BMC ProactiveNet Performance Management (BPPM,ProactiveNet性能管理)
BMC Middleware Management (BMM,中间件管理)
BMC Atrium Discovery and Dependency Mapping (ADDM,Atrium 发现和依赖性映射) .
IBM
劣势
SmartCloud 的监测功能由稳定而复杂的 IBM Tivoli 技术支持着。虽然大部分复杂技术被隐藏起来,这对系统仍然是很大的负担。管理还需要用 APM 套件中的若干工具和用户界面。
由于目前IBM的产品只支持Java的深入代码级监控,对于使用 .NET 和其它正在融合的语言如 Python,PHP 和 Ruby 的公司,需求并不能被满足。
在适时有效地开发更新产品大量智能功能方面,IBM 的速度远远落后于竞争对手。在收购后,整合 Cogos 和 SPSS 的功能就花费了两年时间,而最近 IBM 收购的机器事件,日志检索和分析空间技术还未开始整合。
尽管 IBM 有大量的关于网络管理的工具包,但仍然缺少其他大型 ITOM 软件供应商所具有的 NPM 软件认知能力。
优势
在商业 CIO 和执行层面上,IBM 是一个能够提供多项技术支持的合作伙伴。这种合作伙伴关系保证了监测技术的高渗透性,尤其是拥有大型机技术的企业。
IBM 理解产品使用者对产品简单,易维护的要求,这时的最新的产品易于安装,且使用简单。产品会呈现清晰的数据,来帮助使用者做下一步的决定。
产品具有重新设计过的无代理 SmartCloud APM 交易追踪技术,能够将代理标签和无代理网络包捕获技术联系起来。这种联系能够追踪不容易加探针的部件,在不能安装探针的情况下作为备选方案。
IBM 恢复对 Omegamon 的投资对使用大型机的客户有相当的吸引力,使得许多用其他产品的用户重新使用 IBM 的深层大型机监测方法。重新发布大型机工具使得 IBM 开启了 Tivoli 套件新的销售渠道。
SmartCloud 应用性能管理 。这个新产品线主要是易于安装和管理的 APM 工具,在私有云和混合云环境下针对开源和主流平台上进行监控。另一款产品线 Omegamon XE 的功能与SmartCloud应用性能管理 互补,Omegamon 专注于大型机系统和中间件的深度监控。SmartCloud 主要对物理服务器和虚拟服务器的基础设施进行监控。
IBM 的 ITCAM for Transaction ,在有探针和无探针的两种方式下均可进行监控;ITACM for Application Diagnostics ,用于在 Java EE 中插入探针;
Oracle
劣势
使用以甲骨文为核心的管理软件意味着其它的APM 工具要被集成到Oracle解决方案中去才能满足其他的APM企业级需求。
实时终端用户监控组件在工具包中功能有限,除非这个组件应用于 Oracle Application Development Framework(ADF,甲骨文应用开发框架)。RUEI(甲骨文真实用户体验可视化)产品还没有被完全整合到甲骨文企业管理中,而且还有些可用性问题,包括缺乏有效的解决问题工作流程。
甲骨文在网络可用性和性能方面有所欠缺,现在完全依赖与 Entuity 的合作关系,使用 Entuity 的网络可用性技术和事件流。
甲骨文现在提供的 SaaS 产品通过合作伙伴发行,部分由于甲骨文自己的公有云产品在市场上较新,而且技术不成熟。
优势
利用OEM产品在Oracle数据库环境下的巨大安装基数,自然地提升了APM 产品的销售量
主动管理和嵌入式的甲骨文技术堆栈是其它产品供应商所不能匹敌的。甲骨文商标下的产品和工具包数量在不断增加,这无疑有着市场粘性。主动管理能力不只能够将相应的动作呈现给用户,还可以用于避免性能波动和宕机。
使用一个在以甲骨文为中心的环境运行的产品就可以做到硬件监控,操作系统监控,应用组件监控,应用性能监控(APM),自动释放管理空间。
在管理工具中能够自动采取行动并管理应用配置和代码提供了一种管理释放和回滚(manage releases and rollbacks)的方法,同时这种方法也可以帮助用户理解在甲骨文软件环境中,变化对性能的影响结果。
甲骨文的 APM 套件被整合在 Oracle Enterprise Manager 12c(OEM 12c)产品中
甲骨文在中间件和套装软件中嵌入的不公开API(应用程序编程接口),能够在这些平台上提供最深层监控。除此之外,甲骨文还提供能够直接管理这些工具,防止错误出现,不但能够做到发现错误,并且可以在系统内纠正。
Compuware
劣势
与 Gomez SaaS提供的相比,dynaTrace 的探针诊断和其他技术并没有成为一项服务。在安装和惯例方面,自助购买 SaaS 工具包是有所限制的,并且不能购买和对合约进行管理。
包捕获技术现在在市场上面对 对APM有需求的客户,然而原先 Vantage 的 NPM 顾客被疏远了。
Compuware的产品在价格方面比其他绝大多数APM供应商都要高,并且在安装实施和售后服务方面收取高昂的费用,这种使得希望自己来安装产品的人放弃了购买。
从经济的角度来讲,Compuware 在服务和大型机维护上所花的心思远远高于其在以 APM 为中心的软件生意上。
优势
Compuware 在短时间内将 dynaTrace 和自己的 PurePath 技术整合到工具包中,这无疑是正确的选择。现阶段正在整合 Gomez 和 dynaTrace 的技术,包括前身为 Vantage 的产品。一旦延伸到了大型机,端对端交易的可视化能力将会比现在市场上的产品更有竞争力。
由于具有全球性综合终端用户体验监测网络和庞大的基础数据量,和对手相比,Compuware 更容易以对 APM 的专注度和规模脱颖而出。
Compuware 的抓取包技术和 dynaTrace 的 DC RUM 技术被用来评测套装应用(如:SAP,Cerner,Epic,Oracle forms,VoIP 和 Citrix XenApp),同时其中的 NPM 特性能够被网络工程师使用。
现在市场上的产品为 dynaTrace 的产品包,其中包括经典的 dynaTrace Deep Application Transaction Management(深度应用事务管理) and User Experience Management(UEM,用户体验管理),这两个工具可以进行实施真实用户体验监控和深入的代码级可视化;以及前身为 Vantage 的产品包,包括 以网络应用响应时间监控为主要功能的dynaTrace Data Center Real-User Monitoring(DC RUM,数据中心实施用户监测)12,dynaTrace Synthetic Monitoring 12 and dynaTrace Business Service Management (商业服务管理)12。
近5年APM市场发展状况和趋势
1
Appdynamics
2
NewRelic
3
Compuware
APM as a Service
13810670994
31
1
NewRelic
2
crittercism
Mobile APM
32
THANKS