全链路压测压测报告
压测版本参数:
应用参数配置:
应用名
|
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版本上压测。
压测结果附件:
压测参数附件: