04 web前端性能优化

 

 

 

4.1 全链路压测

1)概念:

     基于实际的生产场景、系统环境、模拟海量的用户请求和数据对整个业务链进行压力测试,并持续调优的过程

2)解决的问题:

    针对业务场景越发复杂、海量数据冲击下整个业务系统链的可用性、服务能力的瓶颈,让技术更好的服务业务,创造更多的价值

 

3)全链路压测流程

 

4.2 性能测试实战

4.2.1 Why:性能测试目标

                    性能评估:没有确切的需求:对于系统性能没有底

                    性能验证:有确切需求:满足客户需求

                    缺陷发现:发现功能测试发现不了的缺陷:提升质量

                    核心指标:系统容量:静态用户量、在线用户量、并发用户量

                                      处理速度:每秒请求数

                                      响应时间:最小、最大、平均响应时间

                                      资源使用率:CPU/内存/网络/IO

4.2.2 Where:项目与测试环境

                       项目环境搭建:阿里ECS服务器

                                                Centos7.X

                                                 MySQL

                                                 Nginx

                                                 JVM

                                                 Tomcat

                                                 Java War包部署

                        压测工具搭建:Windows

                                                  JVM

                                                  Jmeter

                        监控平台搭建:Prometheus

                                                 Node_exporter

                                                 Grafana

                         真实环境模拟:网络时延注入:交换机端口延时设置、OS层面网口延时设置

                                                  数据库存量用户导入:数据文件导入、SQL存储过程、现场数据导入

                                                  思考时间设置:消息间插入思考时间、web系统通常为3-5S

                                                  监控工具开销剔除:top命令查看资源开销

4.2.3 What:性能测试范围:访问首页、登录功能、购买功能、订单查询、、、、

4.2.4 When:性能测试时机:基本功能就绪,即可立即开展

                                               系统发生较大变更,开展基准对照

                                               性能Bug修复,回归测试

4.2.5 Who:性能测试责任人:性能测试工程师牵头、业务领域同事、开发同事、IT人员

4.2.6 How:如何开展:提取性能场景:高并发登录、高并发查询、秒杀

                                      Jmeter脚本开发:查阅接口文档、抓包构建接口消息、录制脚本

                                      监控与指标获取:OS(CPU/内存/网络/IO--OS优化)、中间件(MySQL--慢查询、Nginx--负载均衡、Tomcat--连接池、JVM--JVM GC)

                                      压测与调优:JVM调优、MySQL调优、中间件Tomcat优化、其他优化

4.2.7 Case:测试设计

         30分钟单场景100%负载性能测试

         30分钟复合场景100%负载性能测试

         12小时核心业务100%负载测试

         12小时综合场景100%负载测试

         单场景100%负载主备机切换测试

         极限压力测试,验证系统出错处理机制

         100%负载综合场景下,定时作业运行

         系统静态用户数据容量测试,评估系统支持的最大用户量

         系统同时在线用户量测试,评估系统支持最大在线用户量

         100%负载下综合场景,集群负载分配测试

         100%负载下综合场景,单个节点掉线,N-1个节点负载分配测试

 

ifconfig -s查看RX-DRP\TX-DRP值判断网络丢包

 

posted @ 2022-04-10 09:51  J_勇敢牛牛  阅读(53)  评论(0)    收藏  举报