[
https://issues.apache.org/jira/browse/HDDS-10364?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17817594#comment-17817594
]
Duong commented on HDDS-10364:
------------------------------
cc. [~ritesh] [~tanvipenumudy]
> S3G: Jetty SSL encryption creates a great load of heat for GC
> -------------------------------------------------------------
>
> Key: HDDS-10364
> URL: https://issues.apache.org/jira/browse/HDDS-10364
> Project: Apache Ozone
> Issue Type: Improvement
> Components: S3, s3gateway
> Reporter: Duong
> Priority: Major
> Labels: Performance, performance
> Attachments: HDDS-10364.png, s3-write-ratis-grpc.png,
> s3-write-ratis-streaming.png, s3_read_allocation.htm, s3_write_allocation.htm
>
>
> Jetty's SSL Engine implementation creates a great amount of garbage for GC.
> This is because when SSLEngine encodes/decodes any byte[] of input data, it
> *creates an entirely new* byte[] as output and *does not reuse* it.
> !HDDS-10364.png|width=717,height=271!
>
> This means for every MB of data flows through S3G, there's 1 MB of garbage
> for S3G GC to clean up. *The cost of GC is linear to data throughput.*
> When I do a comparison of writing data from S3 with ratis-streaming vs S3
> with normal async API, ratis-streaming improves the throughput by ~60%, and
> together with S3 throughput, S3 GC cost (and consequently CPU util) also
> improves significantly. And the allocation profile above shows that this is
> not because of ratis-streaming client, but Jetty's SSLEngine.
> !s3-write-ratis-grpc.png|width=651,height=558!
> !s3-write-ratis-streaming.png|width=653,height=560!
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]