
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
性能测试一直以来都是软件运维管理程序员需要长期关注的一个问题,今天我们就通过案例分析来简单了解一下,影响性能测试的因素都有哪些。
线程池
原理、性能问题和数据库连接池类似,测试方法也相似,主要验证线程池能否满足业务需要的吞吐量。
缓存
测试与缓存相关的性能场景时,要关注测试数据的多样性,可以使用脚本批量生成测试数据,也可以使用脱敏后的产品数据。验证击中缓存和直接从数据库读取(缓存中找不到数据时会直接到数据库查询)的性能。由于缓存占用内存较大,可能会频繁引发虚拟机的内存垃圾回收,导致系统性能下降。测试时可以在缓存中加载大量数据,并长时间访问缓存,监控内存垃圾回收的频率。
数据传输速度
在内网部署的应用中,较少出现传输相关性能问题,而当跨机房调用时易出现性能瓶颈。验证过跨两个云迁移数据库的性能场景,在两个云上各自业务的处理速度都较快,但云与云之间的公网传输速度慢,导致并发的迁移线程数无法提升。
代码的逻辑和算法
对测试工程师来说代码的实现通常是一个黑盒,但其中很多代码问题都可能造成性能缺陷。例如对同一个功能,在实现方式上,开发人员可以选择性能好但线程不安全的类,也可以选择线程安全但性能不好的类;程序中可能有不合适的排序算法,或者其循环内有过多不必要的对象。
此外代码中线程同步的范围、集合类对象初始大小等设置也会造成性能隐患。为了发现代码导致的性能问题,在测试过程中测试人员需要同时提高线程数和测试数据量,一些代码会因为测试数据量的增加而变慢,例如排序算法的代码。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。