白癜风遗传 http://pf.39.net/bdfyy/bdfyc/
全链路监控是这些年比较热门的话题,这个话题也带动了APM/NPM产品的发展,甚至顺带也带动了3D可视化产品的销售。随着微服务架构在传统企业中越来越普及,全链路监控的需求也日渐旺盛。一提到全链路监控,运维专家就会以googledapper为样板,介绍APM于全链路监控的关系。确实,dapper在前些年甚至已经成为全链路监控于APM的代名词,很多国内的APM解决方案都参考了dapper以及基于dapper思路的开源APM产品zipkin。
老白常年服务于传统企业,也曾经在一些传统行业企业里推荐类似dapper的APM解决方案,比如zipkin,不过似乎收效甚微,不少企业都不太愿意在自己的PAAS平台中集成zipkin这样的APM产品。这是因为传统企业运维和研发脱节的十分严重,运维人员的需求的并不一定是开发部门所关心的。
这些年传统行业企业也存在大量的全链路监控的需求,由于大多数传统企业没有在云平台中集成APM,因此大多数的全链路监控环节还是要借助于外部的工具,无法和应用深度集成。在运行环境中集成一些APM/NPM工具成为这些企业的首选。
上面这个全链路监控的逻辑图,是在传统行业企业中比较典型的实现模式。利用外部的监控工具,包括外挂的APM/NPM工具,我们可以获得到一个系统中端到端的应用调用逻辑,但是这些都是粗粒度的,无法深入到应用的内部。比如如果我们需要了解应用服务器中应用调用的逻辑,就必须在应用服务器上部署探针,而这种探针的部署是侵入式的,一旦探针存在问题,会影响应用服务器的可靠性,因此很多客户是不愿意部署探针的。
年我曾经在一个大型国企利用APM做白盒优化,不过遇到了很多阻力,一些用户怕JVM探针影响应用服务器的稳定性,不敢安装,胆子大点的客户同意在做系统优化分析的时候启用探针采集。实际上,这种探针确实还是存在一定的风险的,在一些负载比较高的环境下部署JVM采集探针后,确实出现过JVM故障的问题。虽然如此,APM在信息系统优化中的作用还是表现的十分突出,白盒优化也比黑盒优化更能够契合客户的优化需求。
除了APM对应用的监控外,对于其他的IT运维对象,比如网络设备,数据库,中间件、存储的监控是要依赖一些专用的运维监控工具来完成指标数据的采集的。通过这种集成方案,我们可以完成对一个应用系统的端到端的全链路监控。
虽然这个方案可以把全链路监控做起来,不过这种方案并不完美,对于某些由于基础设施引起的系统问题,这个方案可以很好的进行定位分析,对于微服务的监控跟踪能力几乎没有,对于应用模块的调用关系之间的跟踪也很难落地。另外一点就是,这种全链路监控下要