压测服务器性能上不去,JAVA性能优化思路探究

1、背景介绍

一个系统的上线除了常规的功能性测试外,还需要经过严格的性能测试,满足预期的性能指标(常见的有响应时间,tps等),才允许上生产环境。广义的性能测试一般还包含负载测试(用于测试系统的容量:即系统在保证一定响应时间的情况下能够允许多少并发用户的访问),压力测试(用于测试系统的稳定性:即在保证一定压力的情况下,查看测试系统的稳定性),并发测试(即测试系统多并发能力:即模拟多用户访问同一应用的测试,用于发现并发问题,比如线程锁,资源竞争,数据库死锁等)等。

通过性能测试,可以帮助我们尽快发现系统的瓶颈。如果发现未能满足预期的业务目标,则需要进行性能调优。性能调优的需求,有时候来自于原型的验证,有时候来自于生产上实际的问题,不管哪一类的性能调优,我们一般按照性能监控,性能分析,性能优化这几个步骤进行。以下章节会对每个步骤进行详细分析。

2、性能监控

性能监控是性能调优的第一步,主要目的在于了解当前系统运行的状态,了解当前服务器资源使用情况,JVM的内存使用,线程使用等情况,以便于第一时间找到瓶颈点。

2.1 查看服务器配置

为了更好评估服务器性能,首先应了解当前宿主服务器的配置情况。以下主要是针对linux服务器给出的常见的查看命令。

2.1.1 CPU配置

对于CPU,比较关心的是CPU的总逻辑核数,可以直接使用mpstat查看。

87295ff2ae04e3b1f5e7557b9da1699a.png

可以使用cat /proc/cpuinfo查看CPU的型号:

438d4b79c18c4e3fdcbe2b5fa8838beb.png

2.1.2 内存配置

使用free命令进行查看,可以看到总的内存,以及使用的情况

bad0664dfdce96823068cdffb0e5e60f.png

2.1.3 磁盘配置

使用fdisk -l可以查看到所有的磁盘配置情况,使用df -TH可以看到当前磁盘的目录挂载情况

5127a0aa590955f7c4142e71c747dd8d.png

有时候,需要确认当前磁盘是否为SSD盘,判断cat /sys/block/*/queue/rotational的返回值(其中*为你的硬盘设备名称,例如sda等等),如果返回1则表示磁盘可旋转,那么就是HDD了;反之,如果返回0,则表示磁盘不

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值