课程总结

经过本系列课程的学习,应该掌握以下内容:

  • 录制脚本、调试脚本
  • 合理设置业务场景
  • 性能测试分析入门
  • 着重需要掌握后期分享的解决方案,尤其是 Java 工程、MySQL
  • 可以熟练搭建自动化性能测试平台
  • 掌握主流微服务 Dubbo 接口的测试思路

未知领域

学习完本课程后,对于使用 JMeter 肯定是不会在有问题,但是本课程涉及的性能测试知识确远远没有完结,需要大家在实际工作中继续探索,我也在探索之中,尤其是性能测试分析部分,需要我们日积月累,才能掌握精髓,具体给大家展示一下思路。

Oracle 监控

  • 关注 AWR,主要关注当前的 TOP SQL,哪些耗 CPU、哪些耗内存、哪些执行次数比较多
  • 关注 ADDM
  • 关注 AWR-diff
  • 关注系统核心参数,包括以下方面:
    • IPC
    • 进程
    • 线程
    • 文件
    • SWAP
    • 绑定 CPU 绑卡

中间件监控

对于中间件也需要进行关注,主要是 Tomcat 或者是 weblogic。

(1)观察线程是否阻塞

一个线程只能调用一个 CPU,当一个线程的服务过长时,CPU 利用率会更高,此时有太多的 CPU 都没有作用,所以开发的东西一般要并行,不要串行。

(2)观察 JVM 虚拟内存主要包含:

  • 堆内存、栈内存
  • 新生代(Young)、老年代(Old)、永久区(Permanent)

当然还需要掌握一个监控工具:用来 Java 监视和管理控制台。

(3)观察连接池的以下指标:

  • 当前连接数
  • 最大连接数

并不是设定的越大越好。

  • 平均连接数

思路分层

这样综合我们前面的知识,再丰富上节提到过的扩展功能,读者最终应该掌握如下的监控思路:

  • 业务指标:TPS、响应时间、错误率
  • 资源:CPU、内存、Disk
  • 进程:top、vmstat
  • 系统调用或者应用监控
    • 前端:图片大小等
    • 中间件:线程、JVM、连接池
    • 数据库:AWR、ADDM,慢查询
posted @ 2018-11-22 11:49  长安。  阅读(81)  评论(0)    收藏  举报