行业内全链路压测的发展

近期在和业内学习交流,加上自己思考,抽象梳理总结下,行业内全链路压测的发展,分为以下几个阶段

1.有的问题。2013年左右阿里为解决服务稳定性问题,做链路压测,做的全链路压测系统。其它公司后续也跟进。这个阶段主要解决 有的问题,就是要先有一个全链路压测系统。这是第一阶段。

2.自助化使用。互联网行业敏捷开发,多次迭代,多次部署,环境老变,需要测试常态化。全链路压测变成常态化。这就需要测试配合开发,使用全链路压测系统,做压测,这样占用大量测试资源人力时间。所以通过实现全链路压测系统,自助化、自动化部署,使用,让使用这个系统的人的角色,由测试,变为开发,让开发人员自己能发起全链路压测。这就需要实现自助化。这是第二阶段。

3.性能定位效率问题。在微服务,多个服务的情况下,整个后端非常复杂。客户端一个请求,需要涉及到等多个服务。压测发现的服务端性能&功能问题,需要快速的定位到哪一个服务,哪一个模块,哪一个接口,哪一个函数,哪一行代码 导致的功能/性能问题,比如 响应延时高,返回值错误 。如何快速定位,就是一个挑战。想象下,100万并发,压测流量,打上1小时,产生的http请求有36亿次。每个请求,调用10个service,每个service又包含几十个模块,几百个接口。这个信息是爆炸的。所以如何快速定位性能&功能问题,就非常重要了。通过分布式追踪+AIOPS,来解决,这是目前很多公司在做的。这是第三阶段。 

4.系统稳定性问题。保障服务端稳定,并且要成本低,价值高,目前业内如何解决? 弹性伸缩、全链路压测、混沌工程、分布式追踪,四个结合一起解决稳定性问题,这是需要开发、测试、运维 跨三个部门/角色 一起做的事情。如果通过一套系统,把这4个都做了,做到一个集成的平台中,达到技术复用,资源复用,人员复用,从而降低解决稳定性问题的技术门槛,减少测试、开发、运维在稳定性建设上的成本,保障系统稳定性,整体提升ROI,这是非常有价值的一件事。这是第四阶段。

猜你喜欢

转载自blog.csdn.net/longxibendi/article/details/109163194