You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Yan Zhao (Jira)" <ji...@apache.org> on 2023/07/06 02:21:00 UTC

[jira] [Created] (ZOOKEEPER-4717) Cache serialize data in the request to avoid repeat serialize.

Yan Zhao created ZOOKEEPER-4717:
-----------------------------------

             Summary: Cache serialize data in the request to avoid repeat serialize.
                 Key: ZOOKEEPER-4717
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4717
             Project: ZooKeeper
          Issue Type: Improvement
          Components: server
    Affects Versions: 3.8.1
            Reporter: Yan Zhao
             Fix For: 3.8.2


For each request, it will be serialized three times.
1. Leader proposal. It will serialize the request, wrap the serialized data in a proposal, then send the proposal to the quorum members.
2. SyncRequestProcessor append txn log. It will serialize the request, then write the serialized data to the txn log.
3. ZkDataBase addCommittedProposal. It will serialize the request, wrap the serialized data in a proposal, then add the proposal to committedLog.

Serialization operations are CPU-sensitive, and when the CPU experiences jitter, the time required for serialization operations will also skyrocket. Therefore, we should avoid serializing the same request multiple times.





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