Ivan Andika created RATIS-2509:
----------------------------------

             Summary: Optimization to reduce serde cost in Ratis request and 
response
                 Key: RATIS-2509
                 URL: https://issues.apache.org/jira/browse/RATIS-2509
             Project: Ratis
          Issue Type: Improvement
            Reporter: Ivan Andika


Recently, we did a benchmark comparing the OM leader-read that does not go 
through Ratis and OM leader read that go through Ratis (through 
submitClientRequestAsync). We saw that there is up to 25% decrease in read 
throughput although the we make the raft.server.read.option to be DEFAULT which 
should return immediately.

The overheads seem to be because of request/response proto conversion, 
RaftClientRequest construction, future chaining, .get() blocking, Ratis 
metrics/reply building, and parsing the Ratis response back into OMResponse.

This means that if we submit linearizable read to follower, we incurs these 
overhead on top of the linearizable read overhead (e.g. ReadIndex, etc).

We need to think on how to reduce the overhead.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to