Skip to content

Commit

Permalink
Merge pull request #10 from rockyxiashilong/master
Browse files Browse the repository at this point in the history
提交压测变更
  • Loading branch information
chaoxinhu committed Apr 16, 2020
2 parents 7caecd9 + b914642 commit 7191c46
Showing 1 changed file with 39 additions and 33 deletions.
72 changes: 39 additions & 33 deletions readthedocs/zh_CN/docs/performance.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,56 +2,62 @@

## 1. 测试结论

针对WeIdentity v1.6.0进行了性能测试,经过测试,各接口性能均符合预期,下图列出各接口具体数据。所有响应时间单位均为ms。

| 接口 | 交易数 | 平均响应 | 最小响应 | 最大响应 | TPS |
| ------------------------- | -------- | ---------- | ---------- | ------ | -------- |
| CreateWeId | 59534 | 2031 | 184 | 7774 | 199 |
| GetWeIdDocument | 685187 | 175 | 3 | 1286 | 2285 |
| SetPublicKey | 85931 | 1412 | 41 | 4842 | 286 |
| IsAuthorityIssuer | 1707173 | 70.16 | 1 | 1048 | 5708 |
| IsSpecificTypeIssuer | 900017 | 133.3 | 3 | 1763 | 3063.23 |
| QueryAuthorityIssuerInfo | 982550 | 122.12 | 2 | 1912 | 3314.7 |
| QueryCpt | 25757519 | 0.03 | 0 | 40 | 86071.28 |
| CreateCredential | 101318 | 103.36 | 1 | 10184 | 3343.97 |
| CreateSelectiveCredential | 4765140 | 0.62 | 0 | 263 | 15946.42 |
| CreatePresentation | 716447 | 85.89 | 3 | 1447 | 2831.7 |
| Verify | 493131 | 242.88 | 9 | 1416 | 1662.27 |
| VerifyByPresention | 302936 | 396.49 | 10 | 2566 | 1015.41 |
| CreateEvidence | 65881 | 1827.24 | 117 | 5047 | 221.84 |
| GetEvidence | 648350 | 185.2 | 4 | 1446 | 655.66 |
| VerifySigner | 669416 | 179.53 | 4 | 1286 | 2235.85 |
| AddLogByHash | 81579 | 1491.49 | 83 | 4739 | 273.73 |
| BarCodeTransportation | 63019 | 1921 | 32 | 13759 | 210.95 |
### 1.1 WeIdentity v1.6.0测试结论

测试结论:各接口性能均符合预期

测试数据:如下表

| 接口 | 交易数 | 平均响应 | 最小响应 | 最大响应 | TPS |
| ------------------------- | -------- | ------- | ---- | ----- | -------- |
| CreateWeId | 59534 | 2031 | 184 | 7774 | 199 |
| GetWeIdDocument | 685187 | 175 | 3 | 1286 | 2285 |
| SetPublicKey | 85931 | 1412 | 41 | 4842 | 286 |
| IsAuthorityIssuer | 1707173 | 70.16 | 1 | 1048 | 5708 |
| IsSpecificTypeIssuer | 900017 | 133.3 | 3 | 1763 | 3063.23 |
| QueryAuthorityIssuerInfo | 982550 | 122.12 | 2 | 1912 | 3314.7 |
| QueryCpt | 25757519 | 0.03 | 0 | 40 | 86071.28 |
| CreateCredential | 101318 | 103.36 | 1 | 10184 | 3343.97 |
| CreateSelectiveCredential | 4765140 | 0.62 | 0 | 263 | 15946.42 |
| CreatePresentation | 716447 | 85.89 | 3 | 1447 | 2831.7 |
| Verify | 493131 | 242.88 | 9 | 1416 | 1662.27 |
| VerifyByPresention | 302936 | 396.49 | 10 | 2566 | 1015.41 |
| CreateEvidence | 65881 | 1827.24 | 117 | 5047 | 221.84 |
| GetEvidence | 648350 | 185.2 | 4 | 1446 | 655.66 |
| VerifySigner | 669416 | 179.53 | 4 | 1286 | 2235.85 |
| AddLogByHash | 81579 | 1491.49 | 83 | 4739 | 273.73 |
| BarCodeTransportation | 63019 | 1921 | 32 | 13759 | 210.95 |



说明:本次压测采用的是8核16G机器进行压测,四节点组网,压力主要在交易节点;

通过观察发现并发数增加时,TPS和RT对应增加,综合考虑TPS和RT,所有接口均采用并发数500进行数据采集。

### 1.2 WeIdentity v1.6.1测试结论

测试结论:性能均符合预期

针对WeIdentity v1.6.1进行了性能测试,新增如下接口性能数据,性能均符合预期,下图列出各接口具体数据
测试数据:如下表

| 接口 | 交易数 | 平均响应 | 最小响应 | 最大响应 | TPS |
| ------------------- | ------- | ---------- | ---------- | ------ | ----- |
| BatchCreateEvidence | 1908563 | 4523.27 | 308 | 11877 | 22.09 |
| 接口 | 交易数 | 平均响应 | 最小响应 | 最大响应 | TPS |
| ------------------- | ------- | ------- | ---- | ----- | ----- |
| BatchCreateEvidence | 1908563 | 4523.27 | 308 | 11877 | 22.09 |

说明:针对该接口进行长时间压力测试,当并发数设置成100,credentialPojo列表设置成100时,TPS和平均响应时间表现最佳,最后计算出每秒上链的TPS总数=22.9*100。

### 1.1 测试内容
### 1.3 测试内容

对WeIdentity SDK v1.6.0进行压测,采用500并发量持续压测5分钟,观察 sdk主要接口的TPS和RT,采用的是梯度增压的方式进行压力测试,找出符合系统预期的TPS和RT
对WeIdentity SDK 进行压测,采用的是梯度增压的方式进行压力测试, 观察 sdk主要接口的TPS和RT,找出符合系统预期的最佳TPS和RT

### 1.2 测试总结
### 1.4 测试总结

本次测试共采集3组TPS性能数据,从测试结果分析:

1. 在并发数增加时,TPS和RT响应会增加,综合考虑,采用500并发的数据进行数据采集

2. 测试机和区块连交易节点在同一个局域网内,网络响应时间0.2ms,网络不影响整个响应时间
3. 通过nmon观察服务器的CPU、内存、I/O读写速度,均不存在瓶颈
1. 在并发数增加时,TPS和RT响应会增加,综合考虑,采用500并发的数据进行数据采集
2. 测试机和区块连交易节点在同一个局域网内,网络响应时间0.2ms,网络不影响整个响应时间;
3. 通过nmon观察服务器的CPU、内存、I/O读写速度,均不存在瓶颈;
4. 压测时间持续5分钟,系统TPS进入稳定状态,同时TPS不会随区块链块高变化

## 2.测试环境

Expand All @@ -77,5 +83,5 @@ Jmeter 5.1.1 压测程序,安装在linux环境上,采用单客户端模式
| -------------- | --------------- | ------- |
| FISCO-BCOS | FISCO BCOS V2.2 | 底层节点版本 |
| web3sdk | release-2.1.3 | 配套sdk版本 |
| WeIdentity SDK | V1.6.0 | 待测程序 |
| WeIdentity SDK | 最新发布版本 | 待测程序 |

0 comments on commit 7191c46

Please sign in to comment.