本次测试主要目的是对比 AngusTester 和 JMeter 对 JDBC 协议性能表现。
测试环境
以下测试 AngusTester 和 JMeter 使用相同环境。注意:本次测试是在同一台 PC 机上进行,如果想测试特定配置下数据库的准确性能,需要将测试机和 MySQL服务器分开部署,或者使用更高配置的测试服务器。
软件
-
数据库 :Percona Server MySQL 5.7.34-37
-
MySQL 驱动:mysql-connector-j-8.0.31.jar
-
Docker :19.03.11 (使用 Docker 部署 MySQL)
-
测试工具
- AngusTester 1.0.0
- Apache JMeter 4.0
系统
MacBookPro16 PC
- Processors: 1
- Cores: 8 * 2 Intel Core i9 2.3 GHz
- Memory: 32 GB
MySQL 配置
character_set_server = utf8mb4 skip-host-cache skip-name-resolve datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock secure-file-priv=/var/lib/mysql-files user=mysql max_allowed_packet=100M max_connections=2000 # 最大连接数 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 log-error=/var/log/mysql/error.log pid-file=/var/run/mysqld/mysqld.pid
测试表
CREATE TABLE `user` ( `username` varchar(255) NOT NULL, `password` varchar(255) NULL DEFAULT NULL, INDEX `idx_username`(`username`) USING BTREE ) ENGINE = InnoDB;
测试脚本
- JMeter Insert 脚本 (JDBC_Testing_Insert_AngusTesterVSJMeter.jmx)
<?xml version="1.0" encoding="UTF-8"?> <jmeterTestPlan version="1.2" properties="4.0" jmeter="4.0 r1823414"> <hashTree> <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Jdbc prepared update performance testing" enabled="true"> <stringProp name="TestPlan.comments"></stringProp> <boolProp name="TestPlan.functional_mode">false</boolProp> <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp> <boolProp name="TestPlan.serialize_threadgroups">false</boolProp> <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> <collectionProp name="Arguments.arguments"/> </elementProp> <stringProp name="TestPlan.user_define_classpath"></stringProp> </TestPlan> <hashTree> <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Thread Group" enabled="true"> <stringProp name="ThreadGroup.on_sample_error">continue</stringProp> <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true"> <boolProp name="LoopController.continue_forever">false</boolProp> <intProp name="LoopController.loops">-1</intProp> </elementProp> <stringProp name="ThreadGroup.num_threads">1<!-- 1/10/50/100/200/500/1000/2000 --></stringProp> <stringProp name="ThreadGroup.ramp_time"></stringProp> <boolProp name="ThreadGroup.scheduler">true</boolProp> <stringProp name="ThreadGroup.duration">60</stringProp> <stringProp name="ThreadGroup.delay"></stringProp> </ThreadGroup> <hashTree> <JDBCDataSource guiclass="TestBeanGUI" testclass="JDBCDataSource" testname="JDBC Connection Configuration" enabled="true"> <boolProp name="autocommit">true</boolProp> <stringProp name="checkQuery"></stringProp> <stringProp name="connectionAge">5000</stringProp> <stringProp name="dataSource">test</stringProp> <stringProp name="dbUrl">jdbc:mysql://localhost:3306/xcan_mockdata_sample</stringProp> <stringProp name="driver">com.mysql.cj.jdbc.Driver</stringProp> <boolProp name="keepAlive">true</boolProp> <stringProp name="password">123456</stringProp> <stringProp name="poolMax">0</stringProp> <stringProp name="timeout">100000</stringProp> <stringProp name="transactionIsolation">DEFAULT</stringProp> <stringProp name="trimInterval">200000</stringProp> <stringProp name="username">sample</stringProp> </JDBCDataSource> <hashTree/> <JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="JDBC Request" enabled="true"> <stringProp name="dataSource">test</stringProp> <stringProp name="query">INSERT INTO `user` (username, password) VALUES (?, ?)</stringProp> <stringProp name="queryArguments">${__RandomString(16,0123456789abcdefghijklmnopqrstuvwxyz,)},${__RandomString(32,0123456789abcdefghijklmnopqrstuvwxyz,)}</stringProp> <stringProp name="queryArgumentsTypes">VARCHAR,VARCHAR</stringProp> <stringProp name="queryTimeout">60</stringProp> <stringProp name="queryType">Prepared Update Statement</stringProp> <stringProp name="resultSetHandler">Store as String</stringProp> <stringProp name="resultVariable"></stringProp> <stringProp name="variableNames"></stringProp> </JDBCSampler> <hashTree/> </hashTree> </hashTree> </hashTree> </jmeterTestPlan>
运行脚本:
./jmeter -n -t ~/scripts/JDBC_Testing_Insert_AngusTesterVSJMeter.jmx
- AngusTester Insert 脚本 (JDBC_Testing_Insert_AngusTesterVSJMeter.yaml)
specification: angus/1.0.0 info: name: Jdbc prepared update performance testing description: This is an example of jdbc insert statement testing. type: TEST_PERFORMANCE plugin: Jdbc configuration: duration: 60s thread: threads: 1 # 1/10/50/100/200/500/1000/2000 priority: 1000 task: arguments: jdbcSetting: type: MYSQL driverClassName: com.mysql.cj.jdbc.Driver jdbcUrl: jdbc:mysql://localhost:3306/xcan_mockdata_sample username: sample password: 123456 ignoreAssertions: true pipelines: - target: JDBC name: UpdateUser description: Save user by prepared update statement enabled: true type: PREPARED_UPDATE sql: "INSERT INTO `user` (username, password) VALUES (?, ?)" timeoutInSecond: 60 arguments: - type: varchar value: "@String(16)" # Mock数据函数 inout: IN - type: varchar value: "@String(32)" # Mock数据函数 inout: IN
运行脚本:
./startup-runner.sh -s ~/scripts/JDBC_Testing_Insert_AngusTesterVSJMeter.yaml -e 1001
- JMeter Select 脚本 (JDBC_Testing_Select_AngusTesterVSJMeter.jmx)
<?xml version="1.0" encoding="UTF-8"?> <jmeterTestPlan version="1.2" properties="4.0" jmeter="4.0 r1823414"> <hashTree> <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Jdbc prepared select performance testing" enabled="true"> <stringProp name="TestPlan.comments"></stringProp> <boolProp name="TestPlan.functional_mode">false</boolProp> <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp> <boolProp name="TestPlan.serialize_threadgroups">false</boolProp> <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> <collectionProp name="Arguments.arguments"/> </elementProp> <stringProp name="TestPlan.user_define_classpath"></stringProp> </TestPlan> <hashTree> <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Thread Group" enabled="true"> <stringProp name="ThreadGroup.on_sample_error">continue</stringProp> <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true"> <boolProp name="LoopController.continue_forever">false</boolProp> <intProp name="LoopController.loops">-1</intProp> </elementProp> <stringProp name="ThreadGroup.num_threads">1<!-- 1/10/50/100/200/500/1000/2000 --></stringProp> <stringProp name="ThreadGroup.ramp_time"></stringProp> <boolProp name="ThreadGroup.scheduler">true</boolProp> <stringProp name="ThreadGroup.duration">60</stringProp> <stringProp name="ThreadGroup.delay"></stringProp> </ThreadGroup> <hashTree> <JDBCDataSource guiclass="TestBeanGUI" testclass="JDBCDataSource" testname="JDBC Connection Configuration" enabled="true"> <boolProp name="autocommit">true</boolProp> <stringProp name="checkQuery"></stringProp> <stringProp name="connectionAge">5000</stringProp> <stringProp name="dataSource">test</stringProp> <stringProp name="dbUrl">jdbc:mysql://localhost:3306/xcan_mockdata_sample</stringProp> <stringProp name="driver">com.mysql.cj.jdbc.Driver</stringProp> <boolProp name="keepAlive">true</boolProp> <stringProp name="password">123456</stringProp> <stringProp name="poolMax">0</stringProp> <stringProp name="timeout">100000</stringProp> <stringProp name="transactionIsolation">DEFAULT</stringProp> <stringProp name="trimInterval">200000</stringProp> <stringProp name="username">sample</stringProp> </JDBCDataSource> <hashTree/> <JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="JDBC Request" enabled="true"> <stringProp name="dataSource">test</stringProp> <stringProp name="query">SELECT * FROM `user` WHERE username = 'FDgcM6u7xwbhkdCnz'</stringProp> <stringProp name="queryArguments"></stringProp> <stringProp name="queryArgumentsTypes"></stringProp> <stringProp name="queryTimeout">60</stringProp> <stringProp name="queryType">Prepared Select Statement</stringProp> <stringProp name="resultSetHandler">Store as String</stringProp> <stringProp name="resultVariable"></stringProp> <stringProp name="variableNames"></stringProp> </JDBCSampler> <hashTree/> </hashTree> </hashTree> </hashTree> </jmeterTestPlan>
运行脚本:
./jmeter -n -t ~/scripts/JDBC_Testing_Select_AngusTesterVSJMeter.jmx
- AngusTester Select 脚本 (JDBC_Testing_Select_AngusTesterVSJMeter.yaml)
specification: angus/1.0.0 info: name: Jdbc prepared select performance testing description: This is an example of jdbc prepared select statement testing. type: TEST_PERFORMANCE plugin: Jdbc configuration: duration: 60s thread: threads: 1 # 1/10/50/100/200/500/1000/2000 priority: 1000 task: arguments: ignoreAssertions: true jdbcSetting: type: MYSQL driverClassName: com.mysql.cj.jdbc.Driver jdbcUrl: jdbc:mysql://localhost:3306/xcan_mockdata_sample username: sample password: 123456 pipelines: - target: JDBC name: QueryUser description: Query user by prepared select statement. enabled: true type: PREPARED_SELECT sql: SELECT * FROM `user` WHERE username = 'FDgcM6u7xwbhkdCnz' maxResultRows: 1 timeoutInSecond: 60
运行脚本:
./startup-runner.sh -s ~/scripts/JDBC_Testing_Select_AngusTesterVSJMeter.yaml -e 1002
测试结果
Insert 测试
- 1 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 15:37:31 CST 2023 (1700811451582) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 1 in 00:00:01 = 1.6/s Avg: 560 Min: 560 Max: 560 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0 summary + 16697 in 00:00:27 = 611.7/s Avg: 1 Min: 1 Max: 38 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0 summary = 16698 in 00:00:28 = 598.0/s Avg: 1 Min: 1 Max: 560 Err: 0 (0.00%) summary + 17045 in 00:00:30 = 568.2/s Avg: 1 Min: 1 Max: 83 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0 summary = 33743 in 00:00:58 = 582.6/s Avg: 1 Min: 1 Max: 560 Err: 0 (0.00%) summary + 1080 in 00:00:02 = 504.7/s Avg: 1 Min: 1 Max: 12 Err: 0 (0.00%) Active: 0 Started: 1 Finished: 1 summary = 34823 in 00:01:00 = 579.8/s Avg: 1 Min: 1 Max: 560 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 15:38:32 CST 2023 (1700811512140) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 17:42:25 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 86.11MBM(Used), 9.15GBM(Free) Bytes: 0.0B(Recv), 2.0MB(Write) Iterations: 39560 Cpu: 5.42%(Proc), 460.27%(Sys) Date: 11/24 05:41:24 to 11/24 05:42:24 Duration: 60 Second Threads: 0/1 terminated +-------+---------+------+-----+------+-----+-----+-----+-----+------+-------+---------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+------+-----+-----+-----+-----+------+-------+---------+--------+--------+--------+---------+ | Total | 39560 | 1.5 | 1.0 | 19.0 | 1.0 | 2.0 | 2.0 | 2.0 | 4.0 | 39560 | 659.32 | 0 | 0.0 | 0.0B | 34.13KB | +-------+---------+------+-----+------+-----+-----+-----+-----+------+-------+---------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 10 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 17:53:18 CST 2023 (1700819598435) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 23829 in 00:00:11 = 2142.7/s Avg: 4 Min: 1 Max: 597 Err: 0 (0.00%) Active: 10 Started: 10 Finished: 0 summary + 61228 in 00:00:30 = 2040.9/s Avg: 4 Min: 2 Max: 45 Err: 0 (0.00%) Active: 10 Started: 10 Finished: 0 summary = 85057 in 00:00:41 = 2068.5/s Avg: 4 Min: 1 Max: 597 Err: 0 (0.00%) summary + 34121 in 00:00:19 = 1801.2/s Avg: 5 Min: 2 Max: 127 Err: 0 (0.00%) Active: 0 Started: 10 Finished: 10 summary = 119178 in 00:01:00 = 1984.2/s Avg: 4 Min: 1 Max: 597 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 17:54:18 CST 2023 (1700819658945) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 17:56:08 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 101.2MBM(Used), 9.14GBM(Free) Bytes: 0.0B(Recv), 6.36MB(Write) Iterations: 125744 Cpu: 30.14%(Proc), 797.93%(Sys) Date: 11/24 05:55:08 to 11/24 05:56:08 Duration: 60 Second Threads: 0/10 terminated +-------+---------+------+-----+--------+-----+-----+-----+------+------+--------+---------+--------+--------+--------+----------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+--------+-----+-----+-----+------+------+--------+---------+--------+--------+--------+----------+ | Total | 125744 | 4.75 | 1.0 | 1005.0 | 4.0 | 5.0 | 7.0 | 13.0 | 29.0 | 125744 | 2095.66 | 0 | 0.0 | 0.0B | 108.47KB | +-------+---------+------+-----+--------+-----+-----+-----+------+------+--------+---------+--------+--------+--------+----------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 50 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 17:57:49 CST 2023 (1700819869164) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 34999 in 00:00:10 = 3342.5/s Avg: 14 Min: 2 Max: 768 Err: 0 (0.00%) Active: 50 Started: 50 Finished: 0 summary + 85981 in 00:00:30 = 2866.0/s Avg: 17 Min: 3 Max: 1051 Err: 0 (0.00%) Active: 50 Started: 50 Finished: 0 summary = 120980 in 00:00:40 = 2989.3/s Avg: 16 Min: 2 Max: 1051 Err: 0 (0.00%) summary + 50604 in 00:00:20 = 2546.9/s Avg: 19 Min: 3 Max: 379 Err: 0 (0.00%) Active: 0 Started: 50 Finished: 50 summary = 171584 in 00:01:00 = 2843.6/s Avg: 17 Min: 2 Max: 1051 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 17:58:49 CST 2023 (1700819929870) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 18:00:47 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 106.99MBM(Used), 9.13GBM(Free) Bytes: 0.0B(Recv), 9.68MB(Write) Iterations: 191423 Cpu: 65.26%(Proc), 813.71%(Sys) Date: 11/24 05:59:47 to 11/24 06:00:47 Duration: 60 Second Threads: 0/50 terminated +-------+---------+-------+-----+-------+------+------+------+------+------+--------+---------+--------+--------+--------+----------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+-------+-----+-------+------+------+------+------+------+--------+---------+--------+--------+--------+----------+ | Total | 191423 | 15.65 | 2.0 | 908.0 | 12.0 | 19.0 | 30.0 | 57.0 | 92.0 | 191423 | 3190.28 | 0 | 0.0 | 0.0B | 165.12KB | +-------+---------+-------+-----+-------+------+------+------+------+------+--------+---------+--------+--------+--------+----------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 100 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 18:01:45 CST 2023 (1700820105701) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 47439 in 00:00:14 = 3417.5/s Avg: 29 Min: 2 Max: 1275 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0 summary + 78715 in 00:00:30 = 2623.7/s Avg: 38 Min: 3 Max: 1032 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0 summary = 126154 in 00:00:44 = 2874.8/s Avg: 34 Min: 2 Max: 1275 Err: 0 (0.00%) summary + 38058 in 00:00:16 = 2347.5/s Avg: 42 Min: 3 Max: 315 Err: 0 (0.00%) Active: 0 Started: 100 Finished: 100 summary = 164212 in 00:01:00 = 2732.5/s Avg: 36 Min: 2 Max: 1275 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 18:02:46 CST 2023 (1700820166215) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 18:09:05 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 108.9MBM(Used), 9.13GBM(Free) Bytes: 0.0B(Recv), 10.74MB(Write) Iterations: 212575 Cpu: 54.37%(Proc), 1201.13%(Sys) Date: 11/24 06:08:04 to 11/24 06:09:04 Duration: 60 Second Threads: 0/100 terminated +-------+---------+------+-----+-------+------+------+------+-------+-------+--------+---------+--------+--------+--------+----------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+-------+------+------+------+-------+-------+--------+---------+--------+--------+--------+----------+ | Total | 212575 | 28.2 | 1.0 | 305.0 | 21.0 | 37.0 | 58.0 | 110.0 | 168.0 | 212575 | 3542.8 | 0 | 0.0 | 0.0B | 183.37KB | +-------+---------+------+-----+-------+------+------+------+-------+-------+--------+---------+--------+--------+--------+----------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 200 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 18:10:29 CST 2023 (1700820629673) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 1 in 00:00:03 = 0.4/s Avg: 2570 Min: 2570 Max: 2570 Err: 0 (0.00%) Active: 200 Started: 200 Finished: 0 summary + 68344 in 00:00:27 = 2528.4/s Avg: 83 Min: 3 Max: 3374 Err: 0 (0.00%) Active: 200 Started: 200 Finished: 0 summary = 68345 in 00:00:30 = 2299.4/s Avg: 83 Min: 3 Max: 3374 Err: 0 (0.00%) summary + 85912 in 00:00:30 = 2877.5/s Avg: 71 Min: 2 Max: 1187 Err: 0 (0.00%) Active: 200 Started: 200 Finished: 0 summary = 154257 in 00:01:00 = 2589.1/s Avg: 76 Min: 2 Max: 3374 Err: 0 (0.00%) summary + 1702 in 00:00:01 = 2676.1/s Avg: 71 Min: 4 Max: 379 Err: 0 (0.00%) Active: 0 Started: 200 Finished: 200 summary = 155959 in 00:01:00 = 2590.0/s Avg: 76 Min: 2 Max: 3374 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 18:11:30 CST 2023 (1700820690663) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 18:14:26 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 116.88MBM(Used), 9.12GBM(Free) Bytes: 0.0B(Recv), 9.08MB(Write) Iterations: 179738 Cpu: 61.37%(Proc), 1245.63%(Sys) Date: 11/24 06:13:25 to 11/24 06:14:25 Duration: 60 Second Threads: 0/200 terminated +-------+---------+-------+-----+-------+------+------+-------+-------+-------+--------+---------+--------+--------+--------+----------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+-------+-----+-------+------+------+-------+-------+-------+--------+---------+--------+--------+--------+----------+ | Total | 179738 | 66.72 | 2.0 | 670.0 | 50.0 | 89.0 | 141.0 | 270.0 | 398.0 | 179738 | 2995.53 | 0 | 0.0 | 0.0B | 155.04KB | +-------+---------+-------+-----+-------+------+------+-------+-------+-------+--------+---------+--------+--------+--------+----------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 500 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 18:15:41 CST 2023 (1700820941390) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 30277 in 00:00:18 = 1661.8/s Avg: 294 Min: 3 Max: 5927 Err: 0 (0.00%) Active: 500 Started: 500 Finished: 0 summary + 64740 in 00:00:30 = 2157.9/s Avg: 232 Min: 3 Max: 2950 Err: 0 (0.00%) Active: 500 Started: 500 Finished: 0 summary = 95017 in 00:00:48 = 1970.5/s Avg: 252 Min: 3 Max: 5927 Err: 0 (0.00%) summary + 21322 in 00:00:12 = 1759.8/s Avg: 281 Min: 3 Max: 3268 Err: 0 (0.00%) Active: 0 Started: 500 Finished: 500 summary = 116339 in 00:01:00 = 1928.2/s Avg: 257 Min: 3 Max: 5927 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 18:16:42 CST 2023 (1700821002123) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 18:18:24 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 277.65MBM(Used), 8.96GBM(Free) Bytes: 0.0B(Recv), 7.36MB(Write) Iterations: 145556 Cpu: 74.65%(Proc), 1175.65%(Sys) Date: 11/24 06:17:24 to 11/24 06:18:24 Duration: 60 Second Threads: 0/500 terminated +-------+---------+--------+-----+--------+-------+-------+-------+--------+---------+--------+---------+--------+--------+--------+----------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+--------+-----+--------+-------+-------+-------+--------+---------+--------+---------+--------+--------+--------+----------+ | Total | 145556 | 206.02 | 2.0 | 3642.0 | 140.0 | 258.0 | 434.0 | 1165.0 | 2002.89 | 145556 | 2425.69 | 0 | 0.0 | 0.0B | 125.55KB | +-------+---------+--------+-----+--------+-------+-------+-------+--------+---------+--------+---------+--------+--------+--------+----------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 1000 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 18:19:04 CST 2023 (1700821144033) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 29946 in 00:00:26 = 1170.4/s Avg: 833 Min: 3 Max: 21601 Err: 0 (0.00%) Active: 1000 Started: 1000 Finished: 0 summary + 49145 in 00:00:30 = 1637.7/s Avg: 609 Min: 2 Max: 15572 Err: 0 (0.00%) Active: 1000 Started: 1000 Finished: 0 summary = 79091 in 00:00:56 = 1422.7/s Avg: 694 Min: 2 Max: 21601 Err: 0 (0.00%) summary + 7287 in 00:00:05 = 1423.0/s Avg: 690 Min: 3 Max: 5303 Err: 0 (0.00%) Active: 0 Started: 1000 Finished: 1000 summary = 86378 in 00:01:01 = 1422.7/s Avg: 694 Min: 2 Max: 21601 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 18:20:05 CST 2023 (1700821205132) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 18:23:03 *** =========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 152.27MBM(Used), 9.09GBM(Free) Bytes: 0.0B(Recv), 4.9MB(Write) Iterations: 96963 Cpu: 139.98%(Proc), 1146.34%(Sys) Date: 11/24 06:22:03 to 11/24 06:23:03 Duration: 60 Second Threads: 0/1000 terminated +-------+---------+--------+-----+---------+-------+-------+--------+---------+---------+-------+---------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+--------+-----+---------+-------+-------+--------+---------+---------+-------+---------+--------+--------+--------+---------+ | Total | 96963 | 616.32 | 2.0 | 22072.0 | 282.0 | 602.0 | 1301.0 | 6299.36 | 9910.36 | 96963 | 1615.81 | 0 | 0.0 | 0.0B | 83.63KB | +-------+---------+--------+-----+---------+-------+-------+--------+---------+---------+-------+---------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 2000 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 18:30:50 CST 2023 (1700821850360) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 176 in 00:00:09 = 19.1/s Avg: 5352 Min: 65 Max: 9064 Err: 39 (22.16%) Active: 2000 Started: 2000 Finished: 0 summary + 18908 in 00:00:30 = 630.5/s Avg: 2913 Min: 4 Max: 39041 Err: 0 (0.00%) Active: 2000 Started: 2000 Finished: 0 summary = 19084 in 00:00:39 = 486.9/s Avg: 2935 Min: 4 Max: 39041 Err: 39 (0.20%) summary + 17040 in 00:00:23 = 747.1/s Avg: 3778 Min: 3 Max: 60981 Err: 0 (0.00%) Active: 0 Started: 2000 Finished: 2000 summary = 36124 in 00:01:02 = 582.6/s Avg: 3333 Min: 3 Max: 60981 Err: 39 (0.11%) Tidying up ... @ Fri Nov 24 18:31:52 CST 2023 (1700821912816) ... end of run
AngusTester 测试结果:
=========================================================================================================================== Exec ID: 1001 Run Mode: LOCAL Memory: 352.47MBM(Used), 8.89GBM(Free) Bytes: 0.0B(Recv), 2.86MB(Write) Iterations: 56653 Cpu: 182.89%(Proc), 1318.76%(Sys) Date: 11/24 06:33:28 to 11/24 06:34:28 Duration: 60 Second Threads: 0/2000 terminated +-------+---------+---------+-----+---------+-------+-------+--------+----------+----------+-------+---------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+---------+-----+---------+-------+-------+--------+----------+----------+-------+---------+--------+--------+--------+---------+ | Total | 56653 | 2083.02 | 3.0 | 60515.0 | 331.0 | 899.0 | 5566.0 | 30802.46 | 49362.16 | 56653 | 944.14 | 3 | 0.01 | 0.0B | 48.86KB | +-------+---------+---------+-----+---------+-------+-------+--------+----------+----------+-------+---------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
Select 测试
以下测试 AngusTester 和 JMter 使用同一份表数据。
- 1 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:19:05 CST 2023 (1700806745751) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 22263 in 00:00:24 = 933.3/s Avg: 1 Min: 0 Max: 390 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0 summary + 29662 in 00:00:30 = 988.8/s Avg: 0 Min: 0 Max: 50 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0 summary = 51925 in 00:00:54 = 964.2/s Avg: 1 Min: 0 Max: 390 Err: 0 (0.00%) summary + 6144 in 00:00:06 = 990.6/s Avg: 0 Min: 0 Max: 10 Err: 0 (0.00%) Active: 0 Started: 1 Finished: 1 summary = 58069 in 00:01:00 = 966.9/s Avg: 1 Min: 0 Max: 390 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:20:06 CST 2023 (1700806806202) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:37:21 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 82.25MBM(Used), 9.15GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 62053 Cpu: 7.67%(Proc), 380.15%(Sys) Date: 11/24 01:36:21 to 11/24 01:37:21 Duration: 60 Second Threads: 0/1 terminated +-------+---------+------+-----+------+-----+-----+-----+-----+------+-------+---------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+------+-----+-----+-----+-----+------+-------+---------+--------+--------+--------+---------+ | Total | 62053 | 0.96 | 0.0 | 28.0 | 1.0 | 1.0 | 1.0 | 2.0 | 2.0 | 62053 | 1034.2 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+------+-----+------+-----+-----+-----+-----+------+-------+---------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 10 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:13:03 CST 2023 (1700806383302) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 1 in 00:00:01 = 1.8/s Avg: 498 Min: 498 Max: 498 Err: 0 (0.00%) Active: 10 Started: 10 Finished: 0 summary + 147477 in 00:00:26 = 5728.6/s Avg: 1 Min: 0 Max: 1008 Err: 0 (0.00%) Active: 10 Started: 10 Finished: 0 summary = 147478 in 00:00:26 = 5608.0/s Avg: 1 Min: 0 Max: 1008 Err: 0 (0.00%) summary + 188223 in 00:00:30 = 6274.1/s Avg: 1 Min: 0 Max: 241 Err: 0 (0.00%) Active: 10 Started: 10 Finished: 0 summary = 335701 in 00:00:56 = 5962.9/s Avg: 1 Min: 0 Max: 1008 Err: 0 (0.00%) summary + 20618 in 00:00:04 = 5489.4/s Avg: 1 Min: 1 Max: 7 Err: 0 (0.00%) Active: 0 Started: 10 Finished: 10 summary = 356319 in 00:01:00 = 5933.3/s Avg: 1 Min: 0 Max: 1008 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:14:03 CST 2023 (1700806443756) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 14:24:47 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 87.31MBM(Used), 9.15GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 400707 Cpu: 334.73%(Proc), 382.61%(Sys) Date: 11/24 02:23:46 to 11/24 02:24:46 Duration: 60 Second Threads: 0/10 terminated +-------+---------+------+-----+------+-----+-----+-----+-----+------+--------+---------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+------+-----+-----+-----+-----+------+--------+---------+--------+--------+--------+---------+ | Total | 400707 | 1.49 | 0.0 | 42.0 | 1.0 | 2.0 | 2.0 | 3.0 | 5.0 | 400707 | 6678.34 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+------+-----+------+-----+-----+-----+-----+------+--------+---------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 50 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:27:12 CST 2023 (1700807232560) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 191458 in 00:00:17 = 11239.8/s Avg: 4 Min: 1 Max: 776 Err: 0 (0.00%) Active: 50 Started: 50 Finished: 0 summary + 312263 in 00:00:30 = 10408.8/s Avg: 4 Min: 1 Max: 212 Err: 0 (0.00%) Active: 50 Started: 50 Finished: 0 summary = 503721 in 00:00:47 = 10709.7/s Avg: 4 Min: 1 Max: 776 Err: 0 (0.00%) summary + 114747 in 00:00:13 = 8807.7/s Avg: 5 Min: 1 Max: 145 Err: 0 (0.00%) Active: 0 Started: 50 Finished: 50 summary = 618468 in 00:01:00 = 10297.0/s Avg: 4 Min: 1 Max: 776 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:28:13 CST 2023 (1700807293029) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:33:43 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 211.14MBM(Used), 9.03GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 636037 Cpu: 120.28%(Proc), 1191.94%(Sys) Date: 11/24 01:32:43 to 11/24 01:33:43 Duration: 60 Second Threads: 0/50 terminated +-------+---------+------+-----+------+-----+-----+-----+------+------+--------+----------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+------+-----+-----+-----+------+------+--------+----------+--------+--------+--------+---------+ | Total | 636037 | 4.71 | 1.0 | 72.0 | 4.0 | 5.0 | 7.0 | 13.0 | 26.0 | 636037 | 10600.26 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+------+-----+------+-----+-----+-----+------+------+--------+----------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 100 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:32:31 CST 2023 (1700807551943) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 1 in 00:00:01 = 0.9/s Avg: 1005 Min: 1005 Max: 1005 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0 summary + 354652 in 00:00:27 = 13346.3/s Avg: 7 Min: 1 Max: 1047 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0 summary = 354653 in 00:00:28 = 12819.1/s Avg: 7 Min: 1 Max: 1047 Err: 0 (0.00%) summary + 297778 in 00:00:30 = 9925.6/s Avg: 9 Min: 1 Max: 2452 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0 summary = 652431 in 00:00:58 = 11313.6/s Avg: 8 Min: 1 Max: 2452 Err: 0 (0.00%) summary + 20427 in 00:00:02 = 8423.5/s Avg: 11 Min: 2 Max: 126 Err: 0 (0.00%) Active: 0 Started: 100 Finished: 100 summary = 672858 in 00:01:00 = 11196.9/s Avg: 8 Min: 1 Max: 2452 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:33:32 CST 2023 (1700807612428) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:28:28 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 113.04MBM(Used), 9.12GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 811148 Cpu: 154.38%(Proc), 1271.88%(Sys) Date: 11/24 01:27:28 to 11/24 01:28:28 Duration: 60 Second Threads: 0/100 terminated +-------+---------+------+-----+--------+-----+-----+------+------+------+--------+----------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+------+-----+--------+-----+-----+------+------+------+--------+----------+--------+--------+--------+---------+ | Total | 811148 | 7.39 | 1.0 | 1010.0 | 6.0 | 8.0 | 12.0 | 23.0 | 44.0 | 811148 | 13518.68 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+------+-----+--------+-----+-----+------+------+------+--------+----------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 200 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:35:57 CST 2023 (1700807757194) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 157 in 00:00:02 = 69.1/s Avg: 784 Min: 4 Max: 2138 Err: 0 (0.00%) Active: 200 Started: 200 Finished: 0 summary + 312258 in 00:00:30 = 10415.9/s Avg: 19 Min: 1 Max: 2669 Err: 0 (0.00%) Active: 200 Started: 200 Finished: 0 summary = 312415 in 00:00:32 = 9687.0/s Avg: 20 Min: 1 Max: 2669 Err: 0 (0.00%) summary + 301315 in 00:00:28 = 10802.1/s Avg: 18 Min: 1 Max: 899 Err: 0 (0.00%) Active: 0 Started: 200 Finished: 200 summary = 613730 in 00:01:00 = 10204.0/s Avg: 19 Min: 1 Max: 2669 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:36:57 CST 2023 (1700807817896) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:26:41 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 129.1MBM(Used), 9.11GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 932502 Cpu: 213.32%(Proc), 1423.54%(Sys) Date: 11/24 01:25:41 to 11/24 01:26:41 Duration: 60 Second Threads: 0/200 terminated +-------+---------+-------+-----+-------+------+------+------+------+-------+--------+----------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+-------+-----+-------+------+------+------+------+-------+--------+----------+--------+--------+--------+---------+ | Total | 932502 | 12.86 | 1.0 | 383.0 | 10.0 | 14.0 | 23.0 | 59.0 | 134.0 | 932502 | 15540.66 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+-------+-----+-------+------+------+------+------+-------+--------+----------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 500 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:39:23 CST 2023 (1700807963131) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 26931 in 00:00:06 = 4162.4/s Avg: 117 Min: 1 Max: 5782 Err: 0 (0.00%) Active: 500 Started: 500 Finished: 0 summary + 330185 in 00:00:30 = 11006.2/s Avg: 44 Min: 1 Max: 2146 Err: 0 (0.00%) Active: 500 Started: 500 Finished: 0 summary = 357116 in 00:00:36 = 9792.0/s Avg: 49 Min: 1 Max: 5782 Err: 0 (0.00%) summary + 210966 in 00:00:24 = 8725.9/s Avg: 56 Min: 1 Max: 1531 Err: 0 (0.00%) Active: 0 Started: 500 Finished: 500 summary = 568082 in 00:01:01 = 9367.0/s Avg: 52 Min: 1 Max: 5782 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:40:24 CST 2023 (1700808024178) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:00:22 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 377.07MBM(Used), 8.87GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 758963 Cpu: 312.98%(Proc), 1481.01%(Sys) Date: 11/24 12:59:21 to 11/24 01:00:21 Duration: 60 Second Threads: 0/500 terminated +-------+---------+-------+-----+--------+------+------+------+-------+-------+--------+----------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+-------+-----+--------+------+------+------+-------+-------+--------+----------+--------+--------+--------+---------+ | Total | 758963 | 39.51 | 1.0 | 1693.0 | 20.0 | 37.0 | 83.0 | 343.0 | 608.0 | 758963 | 12648.12 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+-------+-----+--------+------+------+------+-------+-------+--------+----------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 1000 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:40:35 CST 2023 (1700808035915) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 114773 in 00:00:24 = 4849.3/s Avg: 196 Min: 2 Max: 14426 Err: 0 (0.00%) Active: 1000 Started: 1000 Finished: 0 summary + 208145 in 00:00:30 = 6947.4/s Avg: 146 Min: 1 Max: 3737 Err: 0 (0.00%) Active: 1000 Started: 1000 Finished: 0 summary = 322918 in 00:00:54 = 6021.4/s Avg: 164 Min: 1 Max: 14426 Err: 0 (0.00%) summary + 48142 in 00:00:07 = 6982.2/s Avg: 139 Min: 2 Max: 2640 Err: 0 (0.00%) Active: 0 Started: 1000 Finished: 1000 summary = 371060 in 00:01:01 = 6130.8/s Avg: 161 Min: 1 Max: 14426 Err: 0 (0.00%) Tidying up ... @ Fri Nov 24 14:41:36 CST 2023 (1700808096896) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:22:12 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 248.41MBM(Used), 8.99GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 752604 Cpu: 519.84%(Proc), 1499.72%(Sys) Date: 11/24 01:21:11 to 11/24 01:22:11 Duration: 60 Second Threads: 0/1000 terminated +-------+---------+-------+-----+--------+------+------+-------+-------+--------+--------+----------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+-------+-----+--------+------+------+-------+-------+--------+--------+----------+--------+--------+--------+---------+ | Total | 752604 | 79.42 | 1.0 | 3352.0 | 33.0 | 65.0 | 181.0 | 810.0 | 1351.0 | 752604 | 12540.06 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+-------+-----+--------+------+------+-------+-------+--------+--------+----------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
- 2000 个线程运行 60 秒测试结果
JMeter 测试结果:
Starting the test @ Fri Nov 24 14:42:32 CST 2023 (1700808152699) Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445 summary + 142530 in 00:00:27 = 5301.9/s Avg: 248 Min: 1 Max: 26573 Err: 22 (0.02%) Active: 2000 Started: 2000 Finished: 0 summary + 124608 in 00:00:30 = 4153.6/s Avg: 597 Min: 2 Max: 47158 Err: 0 (0.00%) Active: 2000 Started: 2000 Finished: 0 summary = 267138 in 00:00:57 = 4696.3/s Avg: 411 Min: 1 Max: 47158 Err: 22 (0.01%) summary + 15477 in 00:00:05 = 3236.5/s Avg: 608 Min: 3 Max: 8756 Err: 0 (0.00%) Active: 0 Started: 2000 Finished: 2000 summary = 282615 in 00:01:02 = 4583.0/s Avg: 422 Min: 1 Max: 47158 Err: 22 (0.01%) Tidying up ... @ Fri Nov 24 14:43:34 CST 2023 (1700808214784) ... end of run
AngusTester 测试结果:
=========================================================================================================================== *** Task Summary Report @ Jdbc TEST_PERFORMANCE @ 2023-11-24 13:24:44 *** =========================================================================================================================== Exec ID: 1002 Run Mode: LOCAL Memory: 611.72MBM(Used), 8.64GBM(Free) Bytes: 0.0B(Recv), 0.0B(Write) Iterations: 401359 Cpu: 550.80%(Proc), 1347.39%(Sys) Date: 11/24 01:23:43 to 11/24 01:24:43 Duration: 60 Second Threads: 0/2000 terminated +-------+---------+--------+-----+---------+------+-------+-------+--------+--------+--------+---------+--------+--------+--------+---------+ | Name | Samples | Mean | Min | Max | P50 | P75 | P90 | P99 | P999 | Trans | Trans/s | Errors | Error% | Recv/s | Write/s | +-------+---------+--------+-----+---------+------+-------+-------+--------+--------+--------+---------+--------+--------+--------+---------+ | Total | 401359 | 296.03 | 1.0 | 13344.0 | 80.0 | 218.0 | 813.0 | 3054.0 | 6045.4 | 401359 | 6685.86 | 0 | 0.0 | 0.0B | 0.0B | +-------+---------+--------+-----+---------+------+-------+-------+--------+--------+--------+---------+--------+--------+--------+---------+ *** Sampling Result: SUCCESS ===========================================================================================================================
对比结果
- 相同条件下,不断增加并发线程数,AngusTester 性能都要比 JMeter 高。
- 在 Insert 测试中,JMeter 50 并发时 QPS 达到最高 2843.6/s,AngusTester 100 并发时 QPS 达到最高 3542.8,最大 QPS 提升了 24.59%;
- 在 Select 测试中,JMeter 100 并发时 QPS 达到最高 11196.9/s,AngusTester 200 并发时 QPS 达到最高 15540.66,最大 QPS 提升了 38.79%。
- QPS 达到最大后,随着并发线程数继续增加,JMeter 性能下降迅速,AngusTester 性能下降比较平缓,表现平稳。
更多产品信息、专题博客、教学视频请访问:https://www.xcan.cloud/ ,您也可以扫码关注更多实时动态。