架构师训练营第 7 周学习总结

用户头像
Season
关注
发布于: 2020 年 07 月 23 日

性能测试



性能测试



性能测试是性能优化的前提和基础,也是性能优化结果的检查和度量标准。不同视角下的网站性能有不同的标准,也有不同的优化手段



  • 主观视角:用户感受到的性能

  • 客观视角:性能指标衡量的性能



性能测试指标



  • 响应时间

  • 并发数

  • 吞吐量:指单位时间内系统处理请求的数量TPSQPSHPS



吞吐量=(1000/响应时间)*并发数



  • 性能计数器:是描述服务器或操作系统的一些数据指标。包括system load、对象与线程数、内存使用、cpu使用、磁盘IO等



性能测试方法



  • 性能测试: 以系统设计初期的性能指标为预期目标,对系统不断施加压力,验证系统在资源

  • 负载测试

  • 压力测试

  • 稳定性测试:长时间、涌动性流量



性能优化



软件性能优化的两个基本原则



  • 你不能优化一个没有测试的软件

  • 你不能优化一个你不了解的软件



Spark应用性能测试



可视化的应用数据



  • 任务

  • cpu

  • 内存

  • 网络

  • 磁盘



性能优化的一般方法



  • 性能测试,获得性能指标

  • 指标分析,发现性能与资源瓶颈点

  • 架构与代码分析,寻找性能与资源瓶颈关键所在

  • 架构与代码优化

  • 性能测试,进入性能优化闭环



性能优化的分层思想



  • 机房与骨干网络性能优化,异地多活的机房架构,专线网络与自主CDN建设

  • 服务器与硬件性能优化,更好的硬件设备,磁盘、网卡、内存、cpu等

  • 操作系统性能优化

  • 虚拟机性能优化

  • 基础组件的性能优化

  • 软件架构性能优化

  • 软件代码性能优化



操作系统性能优化案例



资源利用分析,发现大量cpu操作为sys类型,消耗大量计算资源 调查发现,起因是部分Linux版本缺省情况打开了transparent huge page导致



优化方案:关闭transparent huge page nmon 工具



基础组件优化



阿里巴巴应用服务器升级项目,采用jetty7.1.5替代JBoss4.0.5GA



三ban'buban'b



  • 缓存,优化读操作

  • 异步,优化写操作

  • 集群,集群的技术目标只有一个:如何使很多台服务器对使用者而言看起来像一台服务器



知识不是你知道的就能用得好的。



软件代码性能优化



  • 优化代码结构,设计原则和设计模式



代码优化案例



用户头像

Season

关注

还未添加个人签名 2019.09.28 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第 7 周学习总结