现在微服务很热,微服务对APM最大的影响是什么?如何构建微服务平台?王东讲师来帮你解答这一系列未知的问题。
王东
毕业于天津大学,毕业后一直从事软件相关研发和架构设计工作, 曾经在普元软件任资深架构师、IBM GBS任咨询经理、亚马逊任 架构师等,后加入创业公司,从事研发和管理工作。
什么是APM?
APM (Application Performance Management) 即应用性能管理,属于IT运维管理(ITOM)范畴。主要是针对企业 关键业务的IT应用性能和用户体验的监测、优化,提高企业IT应用的可靠性和质量,保证用户得到良好的服务,降 低IT总拥有成本(TCO)。
APM的发展历程
Gartner对APM的定义(2014)
2014年Gartner对APM的5个定义:
Gartner对APM的定义(2016)
2016年重新定义,将原来的五部分合成三部分。
服务开发架构的发展历程
一开始的应用开发是从Main-frame一直到2010年以前比较热的SOA架构,到14年比较热的Microsorvices架构,从14年开始基于容器化的Microsorvices。服务开发框架复杂度越来越高。
微服务带来的挑战
• 依赖关系复杂
• 持续交付
• 容器化环境
• 服务注册、发现和可靠性
• 一切皆服务(Everything-as-a-Service)
• DevOps
微服务对APM的大影响
APM的核心能力
基于微服务的应用程序端到端监控
APM探针的基本原理 (Java Instrument)
APM探针的基本原理 (Java探针结构)
APM探针的基本原理 (Java Instrument)
分布式追踪 – Google Dapper
分布式追踪 – OpenTracing
追踪一切
无论是业务服务还是微服务,要做到收取流失的数据,还有所有组件健康检查,还要做到数据的分析。
服务关联元数据
监控是分层的,只知道一个服务有问题,并不能定位这个服务的根本原因是什么,就需要使用元数据。
服务动态拓扑
随时间的推移去变化
服务调用链分析
APM总体架构
探针配置
APM核心能力
性能测试
构建“部署 + 监控 + 告警 + 报障”闭环
告警平台
通过故障分类系统、支持组,快速将接入的各监控系统报障通知给相应维护人员, 并通过配置的SLA及组织架构,对未及时响应的报障进行上告处理,以达到卓越运维的目的。
大数据能力的充分释放-自动异常点检测
AIOps
• 告警归并
• 根因分析
• 故障自动恢复
• 容量预测
微信公众号: 架构师日常笔记 欢迎关注!