Description | |
---|---|
Machine | 4C8G Linux JDK 1.8 (Provider) 4C8G Linux JDK 1.8 (Consumer) |
Stress Test Cases | RPC method types include: no-parameter no return value, ordinary pojo return value, pojo list return value Version 2.7 Dubbo protocol (Hessian2 serialization) Version 3.0 Dubbo protocol (Hessian2 serialization) Version 3.0 Dubbo protocol (Protobuf serialization) Version 3.0 Triple protocol (Protobuf serialization) Version 3.0 Triple protocol (Protobuf plus Hessian2 serialization) |
Stress Testing Method | In a single link scenario, the consumer starts 32 concurrent threads (the current machine configuration has a balanced qps rt concurrency), continuously collecting test data Test data is obtained from https://github.com/apache/dubbo-benchmark |
Dubbo + Hessian2 2.7 | Dubbo + Hessian2 3.0 | Dubbo + Protobuf 3.0 | Triple + Protobuf 3.0 | Triple + Protobuf(Hessian) 3.0 | |
---|---|---|---|---|---|
No-parameter Method | 30333 ops/s 2.5ms P99 | 30414 ops/s 2.4ms P99 | 24123 ops/s 3.2ms P99 | 7016 ops/s 8.7ms P99 | 6635 ops/s 9.1ms P99 |
Pojo Return Value | 8984 ops/s 6.1 ms P99 | 12279 ops/s 5.7 ms P99 | 21479 ops/s 3.0 ms P99 | 6255 ops/s 8.9 ms P99 | 6491 ops/s 10 ms P99 |
Pojo List Return Value | 1916 ops/s 34 ms P99 | 2037 ops/s 34 ms P99 | 12722 ops/s 7.7 ms P99 | 6920 ops/s 9.6 ms P99 | 2833 ops/s 27 ms P99 |
Figure 3 Comparison of Dubbo protocol implementations across different versions
Figure 4 Triple vs Dubbo
TBD
TBD