1.性能测试介绍
好处:
有效的性能测试能给研发、运维团队提供有效的容量规划能力、系统风险识别、系统瓶颈识别、性能调优指导,保障尽量避免这些问题的发生。
例如:
假设:以下场景,不可用10分钟,带来的经济损失
天猫双十一峰值处理订单58.3万笔每秒
京东金融618战报:白条交易额10秒破亿,京东支付峰值同比增长132%
降本增效大前提下:
良好的容量规划能力+性能调优能力=省钱
2.行业流行性能压测工具介绍
2.1 Apache AB= Apache HTTP server benchmarking tool 小快灵的工具
2.2 Apache JMETER
2.3 Grinder是⼀个⽤于在多台 机器上运⾏⽤jython(在 JVM上 运⾏的python)编写 的测试脚本的应⽤程序。它 的内部引 擎是基于 Grinder。nGrinder分别⽤ 控制器和agent将 Grinder 的控制台和agent包装起 来,并扩展了⽀持多个 并发 测试的特性
2.4 nGrinder System Architecture
2.5 Locust
2.6 压测场景支撑:
单接口/复杂事务 => JMeter场景+逻辑控制器
压力需求:
Jmeter分布式
CI支持:
Jmeter Jmx 场景文件,数据驱动,结果可视化
二次开发需求:
Jmeter开源插件化思想,支持Thrift、Dubbo等多种协议。可以快速平台化
问题支持:
Jmeter 开放社区,广泛使用
3.行业流行性能监控工具
Linux 自带命令Vmstat,top等
机器监控工具Nmon
物理机监控Collectd+InfluxDB+Grafana
Docker+Mysql+Redis一体化监控:
Prometheus+Grafana(node_exporter,msqld_exporter,redis_exporter,自定义exporter,全家桶)
全链路Tracing监控,Zipkin