吴文杰的个人github博客

全链路压测压测报告

压测版本参数:
应用参数配置:

 

应用名
JVM参数
节点数量
产线包版本
cmf
-Xmx2048m -Xms2048m
4
cmf-20191008175911.war
cmf-task
-Xmx2048m -Xms2048m
1
cmf-task-20191008175945.war
counter
-Xmx2048m -Xms2048m
2
counter-20190905162817.war
fcw
-Xmx2048m -Xms2048m
2
fcw-20191010105025.war
guardian
-Xmx2048m -Xms2048m
2
guardian-20190820170210.war
ma-web
-Xmx2048m -Xms2048m
4
ma-web-20190605.war
payment-task
-Xmx2048m -Xms2048m
1
payment-task-20190618162816.war
pps
-Xmx2048m -Xms2048m
4
pps-20190906140534.war
ssop
-Xmx1024m -Xms1024m
2
ssop-20190809111303.war
ues-ws
-Xmx2048m -Xms2048m
4
ues-ws-20190823111323.war
static-inner
-Xmx2048m -Xms2048m
2
未更新过版本
mns-web
-Xmx2048m -Xms2048m
2
未更新过版本
dpm
-Xmx2048m -Xms2048m
4
未更新过版本
guardian-api
-Xmx2048m -Xms2048m
2
未更新过版本
dpm-task
-Xmx2048m -Xms2048m
1
未更新过版本
ffs
-Xmx2048m -Xms2048m
4
未更新过版本
pbs
-Xmx2048m -Xms2048m
4
未更新过版本
xrm
-Xmx2048m -Xms2048m
4
未更新过版本
pbs-bos
-Xmx2048m -Xms2048m
4
未更新过版本
ufs
-Xmx2048m -Xms2048m
2
未更新过版本
payment
-Xmx2048m -Xms2048m
4
未更新过版本
bank-airajhibank
-Xmx2048m -Xms2048m
2
未更新过版本
bank-anb
-Xmx2048m -Xms2048m
2
未更新过版本
aes
-Xmx512m -Xms512m
2
未更新过版本

 

 

应用名
节点数
产线包版本
备注
cashier
4
jollypay-jc-cashier-2.5-SNAPSHOT-20191010153639.jar
 
gateway
4
jollypay-jc-gateway-2.5-SNAPSHOT-20190925181240.jar
 
collect
2
jollypay-collect-1.1-SNAPSHOT-20190523180955.jar
压测暂时不接入
msg
2
jollypay-msg-web-1.1.6-20190820101215-SNAPSHOT.jar
 
marketing-web
1
jollypay-marketing-web-1.1-SNAPSHOT-20190428192942.jar
管理系统可以忽略
notice
2
jollypay-notice-3.0.2-SNAPSHOT-20190929105820.jar
 
rms-web
1
jollypay-rms-web-1.0.0-SNAPSHOT-20190326102347.jar
管理系统可以忽略
gop
4
jollypay-gop-1.0.0-SNAPSHOT-20190409183956.jar
 
iis
1
iis-core-1.0.1-SNAPSHOT-201902261845.jar
 
jp-marketings
3
jollypay-marketing-1.1-SNAPSHOT-20190604091724.jar
 
trade
4
jollypay-jc-trade-5.0.6-SNAPSHOT-20191012160221.jar
 
jp-rms
2
jollypay-rms-1.0.0-SNAPSHOT-20190820155151.jar
 

 

1、JC预估单机接口调用指标如下:

 

接口名称
接口
MaxTps(单台)
并发量(仅作为参考)
期望响应时间
备注
查询支付方式列表
/api/pay/partner/queryPayMethodList
12
60
50ms
 
查询用户信息接口
/api/pay/user/queryUserInfo
34
150
50ms
 
网关查询用户绑定的银行卡列表
/api/pay/bankAccount/queryBankcardList
 
30
50ms
 
收银台银行卡支付
/api/client/trade/bankcardPayment
 
30
   
直接唤起cashier支付SDK
/api/client/cashier/initCheckOut
 
30
50ms
 

 

压测结果:
 
聚合报告:
活跃线程:
TPS:
 
arthas:
 
 
prometheus应用服务统计:
CPU、IO流量统计

 

应用名称
主要应用
CPU使用率
CPU load
IO使用情况
stres1
cashier   gateway
cpu使用60%以下
 cpu load  0.47  0.19  0.17
 入口:25Mb/s  出口:15Mb/s
stress2
dpm gop pbs pbs-bos
cpu使用50%以下
 cpu load  0.09  0.02  0.01
 入口:6.5Mb/s  出口:6Mb/s
stress3
ma-web payment pps trade
 cpu使用70%以下
 cpu load  0.90  0.29  0.15
 入口:95Mb/s  出口:55Mb/s
stress4
testbank
无压力
无压力
无压力
nginx
nginx
 cpu使用7%以下
 cpu load  0    0    0
 入口:40Mb/s  出口:40Mb/s
mysql
mysql
 cpu使用50%以下
 cpu load  3.00  2.89  2.57
入口:40Mb/s  出口:85Mb/s

 

问题与解决
问题1
解决办法:payment 调用 counter第一次会取账号信息,造成6秒左右的延时。所以第一笔耗时时间比较长,后面都会从缓存从去读。
问题2:
解决办法 :银行台调用银行卡支付造成socket time out现象,原因是jmeter默认时长为3秒左右,而银行卡支付挡板设置了四秒,平均时长都超过连接时长,导致socketTime out。这里jmeter connect改成15s,response改成3秒,问了移动端 他们默认设置为25s。
问题3:
MA  time out ,导致服务直接挂了。
解决办法:因为没有修改tomcat  xmx,xms配置,使用了默认tomcat配置,导致服务直接挂了。增加ma服务配置
结论:
1、系统方面,本次压测,nginx活动链接数为550左右,CPU和网络目前不存在很大压力,全链路接口耗时比去年整体良好。但是还是要特别注意MA 和UES 使用的压力情况,特别是CPU和内存使用情况。因为使用的是qa数据库数据,不能与线上数据库做对比,故此无法对比。
2、应用方面,随着并发数增加,相应接口响应值也增加,这是后续优化重点所在,以上版本基于250版本上压测。
压测结果附件:
test20191017.rar
压测参数附件:
jpTest.jmx
posted @ 2020-12-31 11:47  我是2货呀  阅读(390)  评论(0编辑  收藏  举报
Live2D