【性能测试出现掉并发数现象调优处理】

压测webserver接口-数据库测试

1、压到1000并发时,应用服务器报两个错误,并且伴随着并发数的不断降低

具体错误如下

2、解决应用服务器报错方法

修改数据库的连接池,如图

修改jvm内存参数,如图:

修改监听请求的线程数,如图:

--以上调优的连接数都是为了解决jdbc连接数不够的情况

把句柄从1024-->修改为865535

参考资料:https://blog.51cto.com/12824426/2060594

================================================

linux 默认值 open files为1024。查看当前系统值:

# ulimit -n
1024

说明server只允许同时打开1024个文件。

使用ulimit -a 可以查看当前系统的所有限制值,使用ulimit -n 可以查看当前的最大打开文件数。

新装的linux 默认只有1024 ,当作负载较大的服务器时,很容易遇到error: too many open files。因此,需要将其改大,在/etc/security/limits.conf最后增加:

*               soft    nofile           65535
*               hard   nofile           65535
*               soft    noproc         65535
*               hard   noproc         65535

============================================

--以上调优解决的是too many open file错误

|--以上两个调优解决了应用服务器报的错

3、解决并发数不断降低,断掉的错误方法,即:1000并发掉到800,600

导致的原因:

1>.脚本请求的时间太快,需要引入思考时间:200ms,

2>.负载太大并且tps随着并发数的增加也不会增长,故增加负载机

解决方法:

1、在压测时不断监控windows负载机的端口连接数:终端输入:netstat -ano|find /i /c "TIME"

检测发现,只要端口连接数达不到5w,基本不会往下掉并发数,只要达到window的端口做大限制,就会往下掉

2、查看linux服务器waittime的命令:netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}'

TIME_WAIT 625     ---等待的tcp连接
FIN_WAIT1 6
ESTABLISHED 82   --正常运行的tcp连接
SYN_RECV 8

====================================

并发数为1200时,出现并发数急聚下降
分析原因:
1、单台负载机所能支撑的最大tps是2184
端口:2^16=65536—>端口是2个字节,则共有65536个端口
最大tps:65536/30=2184—>负载机的time-wait默认为30秒,即:每30s复用一个端口。所以由此可以得出单台负载机所能达到的最大tps为2184
2、通过上面的数据可以得知,1200并发所消耗的端口已经突破两台负载机的最大端口数,故出现并发数急聚下降,需增加负载机
======================
结论:
发现单台负载机tps在一定瓶颈时,就要考虑端口是否够用,然后就需要进行加负载机,来使tps提高

转载于:https://www.cnblogs.com/frankruby/p/10695419.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值