一般来说,保证执行性能压测的环境和生产环境高度一致是执行一次有效性能压测的首要原则。有时候,即便是压测环境和生产环境有很细微的差别,都有可能导致整个压测活动评测出来的结果不准确。
1. 性能环境要考虑的要素
1.1 系统逻辑架构
系统逻辑架构,即组成系统的组建,应用之间的结构,交互关系的抽象。最简单最基本的就是三层架构。
三层逻辑结构图
- 客户层:用户请求端。
- web层:处理客户端所有的业务请求逻辑和服务端数据。
- 数据库层:维护业务系统的数据。
更复杂的逻辑结构说明:
- 逻辑架构中的任意一层,有可能是在独立的物理集群机器上,也有可能跨多个物理机器或者跟其他逻辑层共享同一个物理集群。
- 逻辑架构间的箭头是数据流,不是物理网络连接。
1.2 物理架构
下图为物理架构图。
1.3 硬件、软件和网络
- 软件:环境中涉及到哪里基础软件、中间件。
- 硬件:实体机/虚拟机,单机配置(CPU、内存、硬盘大小),集群规模。
- 网络:内网还是外网,网络带宽,是否有跨网段问题,是否隔离。
软件中对系统使用到的中间件有一个了解,不仅可以帮助设计更仿真的压测环境,也有助于在压测过程中,加快瓶颈,问题的定位和解决。
2. 不同性能压测环境优缺点对比
2.1 对比表格
不管哪种压测环境方案,在落地成本,满足需求程度上都有区别ÿ