grpc-rs icon indicating copy to clipboard operation
grpc-rs copied to clipboard

reuse CallTag for streaming calls

Open hicqu opened this issue 5 years ago • 0 comments

This PR make CallTag reusable for streaming calls.

Task list:

  • [x] PR for implementation
  • [x] Benchmark result

cmd = run_performance_tests.py -l rust --regex="protobuf_async_streaming_qps_unconstrained"

patched:

    "summary": {
        "qps": 234351.00498567906,
        "qpsPerServerCore": 29293.875623209882,
        "serverSystemTime": 114.42147575010864,
        "serverUserTime": 256.5736543796901,
        "clientSystemTime": 107.05968081256268,
        "clientUserTime": 261.4261360318102,
        "latency50": 26100874.227000326,
        "latency90": 42682913.54405692,
        "latency95": 48302108.33178213,
        "latency99": 59592629.7964869,
        "latency999": 73441534.96942693,
        "serverCpuUsage": 98.63780712017383,
        "serverQueriesPerCpuSec": 63165.638530005344,
        "clientQueriesPerCpuSec": 63598.37862759732
    },

master:

    "summary": {
        "qps": 223173.67406802665,
        "qpsPerServerCore": 27896.70925850333,
        "serverSystemTime": 110.80008140794565,
        "serverUserTime": 247.1210806457719,
        "clientSystemTime": 103.7189808973478,
        "clientUserTime": 288.99209207086545,
        "latency50": 27239652.07925871,
        "latency90": 45297378.5011097,
        "latency95": 51277266.075107805,
        "latency99": 64065653.403193906,
        "latency999": 80688517.3868167,
        "serverCpuUsage": 98.96864169693933,
        "serverQueriesPerCpuSec": 62350.62384103099,
        "clientQueriesPerCpuSec": 56828.97413134331
    },

hicqu avatar Nov 28 '19 10:11 hicqu