[
https://issues.apache.org/jira/browse/HBASE-28029?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17755624#comment-17755624
]
Bryan Beaudreault commented on HBASE-28029:
-------------------------------------------
My solution in netty is to utilize the setWrapDataSize to give users the
ability to optimize their allocations. So we can easily compare the current
performance to the optimized performance by setting setWrapDataSize or not.
Just added some flamegraphs:
* "default-wrap.html" uses the default (16kb) wrap size.
** epollOutReady - 1.36%
** context.write - 0.47%
** allocateOutNetBuf - 1.40%
* "10mb-wrap.html" as the name suggests does setWriteDataSize(10mb)
** epollOutRead - 0.41%
** context.write - not visible in flame
** allocateOutNetBuf - 0.11%
Additionally, I recorded overall throughput of a workload for both cases. I ran
3 runs of each setup, with 500k requests to a table with only 1000 5mb rows. I
chose this table setup so that the blocks would fit in Hbase's block cache,
thus removing some variability related to hdfs/disk performance. My
regionservers are setup so that I can change the setWrapDataSize without
restarting, and no other work is occurring on the cluster. Over the the 3 runs
each, the default case had an average throughput of {*}414 req/s{*}, while the
5mb case had an average throughput of {*}453 req/s{*}.
> Netty SSL throughput improvement
> --------------------------------
>
> Key: HBASE-28029
> URL: https://issues.apache.org/jira/browse/HBASE-28029
> Project: HBase
> Issue Type: Improvement
> Reporter: Bryan Beaudreault
> Assignee: Bryan Beaudreault
> Priority: Major
> Attachments: 10mb-wrap.html, default-wrap.html
>
>
> Digging into HBASE-27947, I discovered an area for optimization in netty's
> SslHandler. I submitted that upstream to
> [https://github.com/netty/netty/issues/13549,] and submitted a PR for their
> review [https://github.com/netty/netty/pull/13551.]
> It's likely we will need changes in HBase to integrate this, including
> updating hbase-thirdparty once the change is released, and adding support for
> calling SslHandler.setWrapDataSize. This issue encapsulates that work.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)