美文网首页
Jmeter测试移动接口性能--性能调优

Jmeter测试移动接口性能--性能调优

作者: 小安静子 | 来源:发表于2017-10-19 22:26 被阅读105次

    前面写了性能测试如何执行并得到测试报告。现在要开始最重要的一步了。性能调优。

    说句实话,性能调优这块我并没有太多的经验。只是简单参与,以及和别人探讨过。
    性能测试不单单是性能测试工程师一个人的事儿。需要DBA 、开发人员、运维人员的配合完成。
    性能调优这块需要掌握的东西太多了,不知道从何处下手,是从硬件开始?还是先从代码或数据库?
    从操作系统(CPU调度,内存管理,进程调度,磁盘I/O)、网络、协议(HTTP, TCP/IP )?还是从应用程序代码,数据库调优,中间件配置等方面入手?
    “罗马不是一天建成的”。
    单一个中间件又分web中间件(apache 、IIS),应用中间件(tomcat 、weblogic 、webSphere )等,虽然都是中间件,每一样都是要很深厚的功底。所以好的性能测试工程师很吃香。

    一般会存在哪些瓶颈?

    • 1 硬件性能瓶颈: 一般指服务器的CPU、内存、磁盘I/O 的问题。
    • 2 数据库性能瓶颈: 数据库系统,JDBC连接池的参数设置,表关系,表设计等问题。
    • 3 中间件性能瓶颈:如启动服务的(tomcat 、weblogic 、IIS, nginx, JVM)等
    • 4 应用程序性能瓶颈:程序架构规划不合理,程序本身设计有问题(串行处理、请求的处理线程不够, 请求发送太多,资源没有压缩优化,算法,数据请求等)
    • 5 操作系统上的性能瓶颈: 一般指的是windows、UNIX、Linux等操作系统。
    • 6 网络瓶颈: 网络的带宽,传输速率,防火墙、交换机等设备的瓶颈。

    如何优化?

    找到了可能出现性能瓶颈的地方,优化起来就有的放矢了。

    1. 对于服务器和网络硬件: 简单粗暴的方法, 增加硬件,负载均衡。曾经跟一个运维总监讨论过。他说现在服务器都是刀片,而且价格已经降下来了,可以增加刀片。并且服务器集群可以做负载均衡。有算法可以选在就近网络回路。
    2. 数据库: 可以优化表结构,优化查询,用游标,用存储过程等来提高性能。还可以优化连接池的配置,缓存机制等
    3. 中间件:调优参数
    4. 应用程序性: 请求资源打包压缩,Ajax机制,本地缓存,减少发送请求,优化算法等。

    目前想到的就只有这些,如果有不正确的地方,还请斧正。

    大公司如何做性能测试?

    马上双11就要来临了,各大电商,物流机构,一个整个生态链都要面临巨大流量检验。用Jmeter测试肯定不行的,都不是一个数量级别的测试。
    曾经听过某大型旅行网站的分享(刚刚还出丑闻的那个),它们把线上的流量record下来,然后隔离开部分服务器当堡垒机。
    把数据简单清洗,通过gor, tcpcopy等引流,导流(可以放大,缩小)到堡垒机上进行压测。

    完。。。
    (总算没有烂尾)

    相关文章

      网友评论

          本文标题:Jmeter测试移动接口性能--性能调优

          本文链接:https://www.haomeiwen.com/subject/fxryuxtx.html