本文是阿里巴巴 PTS 团队《Performance Test Together》系列专题分享,霍格沃兹测试学院经特别授权转载,也会结合学员实际需求组织大咖公开课主题分享,文末有福利!
性能压测,是保障服务可用性和稳定性过程中,不可或缺的一环。我们将从性能压测的设计、实现、执行、监控、问题定位和分析、应用场景等多个纬度对性能压测的全过程进行拆解,以帮助大家构建完整的性能压测的理论体系,并提供有例可依的实战。
一般来说,保证执行性能压测的环境和生产环境高度一致是执行一次有效性能压测的首要原则。有时候,即便是压测环境和生产环境有很细微的差别,都有可能导致整个压测活动评测出来的结果不准确。
01 性能环境要考虑的要素
1. 系统逻辑架构
系统逻辑架构,即组成系统的组件、应用之间的结构、交互关系的抽象。最简单最基本的就是这三层架构。
三层逻辑结构图
-
客户层:用户请求端。
-
Web层:处理客户端所有的业务请求逻辑和服务端数据。
-
数据库层:维护业务系统的数据。
更复杂的逻辑结构
-
逻辑架构中的任意一层,有可能是在独立的物理集群机器上,也有可能跨多个物理机器或者跟其他逻辑层共享同一个物理集群。
-
逻辑架构间的箭头是数据流,不是物理网络连接。
2. 物理架构
物理架构图
3. 硬件、软件和网络
-
软件:环境中涉及到哪些基础软件、中间件。
-
硬件:实体机/虚拟机,单机配置(CPU、内存、硬盘大小),集群规模。
-
网络:内网还是