zoukankan      html  css  js  c++  java
  • 从测试角度分析—导致系统性能达到瓶颈的主要因素有哪些?

    一、网络通信

      软件系统都是通过网络进行数据传输的,如果网络带宽不够支撑起一定数量的用户,就会导致系统性能难以提升!

      这也就是为什么做性能测试的时候,需要保证测试环境的独立。防止测试的时候,有其他的操作占用系统性能。

      比如大量数据处理一类的批处理业务操作,会持续占用系统内存,cpu,影响性能测试结果。

    二、硬件资源

      服务器的硬件配置如果过低,也是会导致性能补足,因为硬件配置过低,本身性能指标就不高。

      这时候就需要根据性能要求更换服务器相关硬件,或者是增加相关的硬件。

    三、sql语句执行过慢

      可以通过慢查询日志,确定需要优化的sql语句(可以使用索引优化sql语句的执行效率)

      1.避免查询 * (所有)列,通过指定字段的查询方式进行查询

      2.优先使用select....into,然后使用insert....into,避免表锁死的情况发生

      3.避免使用NOT IN,可以采用IN,EXISTS NOT EXISTS和LEFT JOIN 加空值判断。

    四、优化代码

      1.优化代码逻辑:

      2.递归:

      3.优化日志级别

      4.使用异步模式

      这里就是要考虑相关代码的执行逻辑以及数据的处理方式,比如简单的 for 循环,尽量使用列表推导式来完成。

    五、服务器集群

      如果上述问题解决以后,依旧没有达到预期的性能指标。这时候就要考虑服务器集群了。

      将多台服务器集中起来(剑圣:集中起来的意志,可以击穿顽石~),进行同一种服务,从客户端的角度看,就像是一台服务器。使用集群可以将单服务器的压力充分分散给各服务器,从而提升服务器的整体性能。

    六、业务逻辑的优化处理

      如果还是不行,就考虑优化业务逻辑了,比如3个请求可以做完的事情,就可以简化一些无谓的请求和业务操作。

  • 相关阅读:
    【JAVA】BitSet的源码研究
    【JAVA】大整数数据量排序
    三层架构的DCOM配置
    .NET+COM+组件注册方法
    开博感言
    about Cache
    代码HTML
    取远程用户IP地址
    ShowModalDialog页面传值
    about char变量
  • 原文地址:https://www.cnblogs.com/Super-Treasure/p/12173116.html
Copyright © 2011-2022 走看看