JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Throughput, ops/time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.createUser

Run progress: 0.00% complete, ETA 00:00:24

Fork: 1 of 1

Warmup Iteration 1: 0.917 ops/ms

Iteration 1: 2.101 ops/ms

Result “org.apache.dubbo.benchmark.ClientSimple.createUser”: 2.101 ops/ms

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Throughput, ops/time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.existUser

Run progress: 8.33% complete, ETA 00:01:18

Fork: 1 of 1

Warmup Iteration 1: 3.165 ops/ms

Iteration 1: 5.870 ops/ms

Result “org.apache.dubbo.benchmark.ClientSimple.existUser”: 5.870 ops/ms

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Throughput, ops/time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.getUser

Run progress: 16.67% complete, ETA 00:01:10

Fork: 1 of 1

Warmup Iteration 1: 2.377 ops/ms

Iteration 1: 3.856 ops/ms

Result “org.apache.dubbo.benchmark.ClientSimple.getUser”: 3.856 ops/ms

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Throughput, ops/time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.listUser

Run progress: 25.00% complete, ETA 00:01:03

Fork: 1 of 1

Warmup Iteration 1: 1.984 ops/ms

Iteration 1: 2.732 ops/ms

Result “org.apache.dubbo.benchmark.ClientSimple.listUser”: 2.732 ops/ms

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Average time, time/op

Benchmark: org.apache.dubbo.benchmark.ClientSimple.createUser

Run progress: 33.33% complete, ETA 00:00:56

Fork: 1 of 1

Warmup Iteration 1: 11.229 ±(99.9%) 0.199 ms/op

Iteration 1: 7.213 ±(99.9%) 0.044 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.createUser”: 7.213 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Average time, time/op

Benchmark: org.apache.dubbo.benchmark.ClientSimple.existUser

Run progress: 41.67% complete, ETA 00:00:49

Fork: 1 of 1

Warmup Iteration 1: 5.803 ±(99.9%) 0.085 ms/op

Iteration 1: 3.230 ±(99.9%) 0.015 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.existUser”: 3.230 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Average time, time/op

Benchmark: org.apache.dubbo.benchmark.ClientSimple.getUser

Run progress: 50.00% complete, ETA 00:00:42

Fork: 1 of 1

Warmup Iteration 1: 9.590 ±(99.9%) 0.187 ms/op

Iteration 1: 7.186 ±(99.9%) 0.048 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.getUser”: 7.186 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Average time, time/op

Benchmark: org.apache.dubbo.benchmark.ClientSimple.listUser

Run progress: 58.33% complete, ETA 00:00:35

Fork: 1 of 1

Warmup Iteration 1: 15.546 ±(99.9%) 0.379 ms/op

Iteration 1: 10.512 ±(99.9%) 0.102 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.listUser”: 10.512 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Sampling time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.createUser

Run progress: 66.67% complete, ETA 00:00:28

Fork: 1 of 1

Warmup Iteration 1: 10.794 ±(99.9%) 0.332 ms/op

Iteration 1: 6.767 ±(99.9%) 0.105 ms/op createUser·p0.00: 0.943 ms/op createUser·p0.50: 6.390 ms/op createUser·p0.90: 8.906 ms/op createUser·p0.95: 10.548 ms/op createUser·p0.99: 15.923 ms/op createUser·p0.999: 22.662 ms/op createUser·p0.9999: 22.807 ms/op createUser·p1.00: 22.807 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.createUser”: N = 4703 mean = 6.767 ±(99.9%) 0.105 ms/op

Histogram, ms/op: [ 0.000, 2.500) = 10 [ 2.500, 5.000) = 465 [ 5.000, 7.500) = 3281 [ 7.500, 10.000) = 621 [10.000, 12.500) = 195 [12.500, 15.000) = 69 [15.000, 17.500) = 18 [17.500, 20.000) = 35 [20.000, 22.500) = 2 [22.500, 25.000) = 7 [25.000, 27.500) = 0

Percentiles, ms/op: p(0.0000) = 0.943 ms/op p(50.0000) = 6.390 ms/op p(90.0000) = 8.906 ms/op p(95.0000) = 10.548 ms/op p(99.0000) = 15.923 ms/op p(99.9000) = 22.662 ms/op p(99.9900) = 22.807 ms/op p(99.9990) = 22.807 ms/op p(99.9999) = 22.807 ms/op p(100.0000) = 22.807 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Sampling time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.existUser

Run progress: 75.00% complete, ETA 00:00:21

Fork: 1 of 1

Warmup Iteration 1: 5.594 ±(99.9%) 0.128 ms/op

Iteration 1: 3.016 ±(99.9%) 0.042 ms/op existUser·p0.00: 0.926 ms/op existUser·p0.50: 2.810 ms/op existUser·p0.90: 3.748 ms/op existUser·p0.95: 4.260 ms/op existUser·p0.99: 10.289 ms/op existUser·p0.999: 16.446 ms/op existUser·p0.9999: 17.968 ms/op existUser·p1.00: 17.990 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.existUser”: N = 10598 mean = 3.016 ±(99.9%) 0.042 ms/op

Histogram, ms/op: [ 0.000, 1.250) = 5 [ 1.250, 2.500) = 3158 [ 2.500, 3.750) = 6384 [ 3.750, 5.000) = 773 [ 5.000, 6.250) = 76 [ 6.250, 7.500) = 65 [ 7.500, 8.750) = 9 [ 8.750, 10.000) = 14 [10.000, 11.250) = 15 [11.250, 12.500) = 22 [12.500, 13.750) = 45 [13.750, 15.000) = 1 [15.000, 16.250) = 18 [16.250, 17.500) = 11 [17.500, 18.750) = 2

Percentiles, ms/op: p(0.0000) = 0.926 ms/op p(50.0000) = 2.810 ms/op p(90.0000) = 3.748 ms/op p(95.0000) = 4.260 ms/op p(99.0000) = 10.289 ms/op p(99.9000) = 16.446 ms/op p(99.9900) = 17.968 ms/op p(99.9990) = 17.990 ms/op p(99.9999) = 17.990 ms/op p(100.0000) = 17.990 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Sampling time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.getUser

Run progress: 83.33% complete, ETA 00:00:14

Fork: 1 of 1

Warmup Iteration 1: 9.280 ±(99.9%) 0.316 ms/op

Iteration 1: 6.781 ±(99.9%) 0.094 ms/op getUser·p0.00: 1.612 ms/op getUser·p0.50: 6.423 ms/op getUser·p0.90: 8.880 ms/op getUser·p0.95: 10.401 ms/op getUser·p0.99: 14.221 ms/op getUser·p0.999: 20.238 ms/op getUser·p0.9999: 21.594 ms/op getUser·p1.00: 21.594 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.getUser”: N = 4731 mean = 6.781 ±(99.9%) 0.094 ms/op

Histogram, ms/op: [ 0.000, 2.500) = 5 [ 2.500, 5.000) = 540 [ 5.000, 7.500) = 3036 [ 7.500, 10.000) = 863 [10.000, 12.500) = 180 [12.500, 15.000) = 78 [15.000, 17.500) = 15 [17.500, 20.000) = 9 [20.000, 22.500) = 5 [22.500, 25.000) = 0 [25.000, 27.500) = 0

Percentiles, ms/op: p(0.0000) = 1.612 ms/op p(50.0000) = 6.423 ms/op p(90.0000) = 8.880 ms/op p(95.0000) = 10.401 ms/op p(99.0000) = 14.221 ms/op p(99.9000) = 20.238 ms/op p(99.9900) = 21.594 ms/op p(99.9990) = 21.594 ms/op p(99.9999) = 21.594 ms/op p(100.0000) = 21.594 ms/op

JMH version: 1.21

VM version: JDK 1.8.0_412, OpenJDK 64-Bit Server VM, 25.412-b08

VM invoker: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.412-8/x64/jre/bin/java

VM options: -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -Dserver.host=localhost -Dserver.port=8080 -Dbenchmark.output=dubbo-gson_output.md

Warmup: 1 iterations, 1 s each

Measurement: 1 iterations, 1 s each

Timeout: 10 min per iteration

Threads: 32 threads, will synchronize iterations

Benchmark mode: Sampling time

Benchmark: org.apache.dubbo.benchmark.ClientSimple.listUser

Run progress: 91.67% complete, ETA 00:00:07

Fork: 1 of 1

Warmup Iteration 1: 12.966 ±(99.9%) 0.458 ms/op

Iteration 1: 10.185 ±(99.9%) 0.166 ms/op listUser·p0.00: 2.949 ms/op listUser·p0.50: 9.937 ms/op listUser·p0.90: 13.959 ms/op listUser·p0.95: 15.172 ms/op listUser·p0.99: 19.268 ms/op listUser·p0.999: 21.332 ms/op listUser·p0.9999: 22.905 ms/op listUser·p1.00: 22.905 ms/op

Result “org.apache.dubbo.benchmark.ClientSimple.listUser”: N = 3158 mean = 10.185 ±(99.9%) 0.166 ms/op

Histogram, ms/op: [ 0.000, 2.500) = 0 [ 2.500, 5.000) = 29 [ 5.000, 7.500) = 481 [ 7.500, 10.000) = 1102 [10.000, 12.500) = 927 [12.500, 15.000) = 446 [15.000, 17.500) = 120 [17.500, 20.000) = 38 [20.000, 22.500) = 14 [22.500, 25.000) = 1 [25.000, 27.500) = 0

Percentiles, ms/op: p(0.0000) = 2.949 ms/op p(50.0000) = 9.937 ms/op p(90.0000) = 13.959 ms/op p(95.0000) = 15.172 ms/op p(99.0000) = 19.268 ms/op p(99.9000) = 21.332 ms/op p(99.9900) = 22.905 ms/op p(99.9990) = 22.905 ms/op p(99.9999) = 22.905 ms/op p(100.0000) = 22.905 ms/op

Run complete. Total time: 00:01:24

REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial experiments, perform baseline and negative tests that provide experimental control, make sure the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell.

Benchmark Mode Cnt Score Error Units ClientSimple.createUser thrpt 2.101 ops/ms ClientSimple.existUser thrpt 5.870 ops/ms ClientSimple.getUser thrpt 3.856 ops/ms ClientSimple.listUser thrpt 2.732 ops/ms ClientSimple.createUser avgt 7.213 ms/op ClientSimple.existUser avgt 3.230 ms/op ClientSimple.getUser avgt 7.186 ms/op ClientSimple.listUser avgt 10.512 ms/op ClientSimple.createUser sample 4703 6.767 ± 0.105 ms/op ClientSimple.createUser:createUser·p0.00 sample 0.943 ms/op ClientSimple.createUser:createUser·p0.50 sample 6.390 ms/op ClientSimple.createUser:createUser·p0.90 sample 8.906 ms/op ClientSimple.createUser:createUser·p0.95 sample 10.548 ms/op ClientSimple.createUser:createUser·p0.99 sample 15.923 ms/op ClientSimple.createUser:createUser·p0.999 sample 22.662 ms/op ClientSimple.createUser:createUser·p0.9999 sample 22.807 ms/op ClientSimple.createUser:createUser·p1.00 sample 22.807 ms/op ClientSimple.existUser sample 10598 3.016 ± 0.042 ms/op ClientSimple.existUser:existUser·p0.00 sample 0.926 ms/op ClientSimple.existUser:existUser·p0.50 sample 2.810 ms/op ClientSimple.existUser:existUser·p0.90 sample 3.748 ms/op ClientSimple.existUser:existUser·p0.95 sample 4.260 ms/op ClientSimple.existUser:existUser·p0.99 sample 10.289 ms/op ClientSimple.existUser:existUser·p0.999 sample 16.446 ms/op ClientSimple.existUser:existUser·p0.9999 sample 17.968 ms/op ClientSimple.existUser:existUser·p1.00 sample 17.990 ms/op ClientSimple.getUser sample 4731 6.781 ± 0.094 ms/op ClientSimple.getUser:getUser·p0.00 sample 1.612 ms/op ClientSimple.getUser:getUser·p0.50 sample 6.423 ms/op ClientSimple.getUser:getUser·p0.90 sample 8.880 ms/op ClientSimple.getUser:getUser·p0.95 sample 10.401 ms/op ClientSimple.getUser:getUser·p0.99 sample 14.221 ms/op ClientSimple.getUser:getUser·p0.999 sample 20.238 ms/op ClientSimple.getUser:getUser·p0.9999 sample 21.594 ms/op ClientSimple.getUser:getUser·p1.00 sample 21.594 ms/op ClientSimple.listUser sample 3158 10.185 ± 0.166 ms/op ClientSimple.listUser:listUser·p0.00 sample 2.949 ms/op ClientSimple.listUser:listUser·p0.50 sample 9.937 ms/op ClientSimple.listUser:listUser·p0.90 sample 13.959 ms/op ClientSimple.listUser:listUser·p0.95 sample 15.172 ms/op ClientSimple.listUser:listUser·p0.99 sample 19.268 ms/op ClientSimple.listUser:listUser·p0.999 sample 21.332 ms/op ClientSimple.listUser:listUser·p0.9999 sample 22.905 ms/op ClientSimple.listUser:listUser·p1.00 sample 22.905 ms/op

Benchmark result is saved to 1715645724417.json