[
https://issues.apache.org/jira/browse/HBASE-14479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
stack updated HBASE-14479:
--------------------------
Attachment: gets.png
median.png
gc.png
io.png
Some pictures. I ran YCSB four loadings C (100% random read). The first was
branch-1, the second was branch-1 + this patch, the third run was also branch-1
+ this patch, and then the fourth run was w/o the patch (same as first run;
i.e. run 1 and 4 were without the patch and runs 2 and 3 were with the patch).
I restarted between run 1 and 2 and between 3 and 4.
High-level, throughput is slightly up (depedent on the run..the differences are
pretty erratic).
Median, 75th and 95th are about the same... maybe less w/ the patch applied.
GC time may be less w/ the patch (the fourth run which is w/o the patch has
less GC but it is doing way less gets).
Load w/ patch seems slightly less w/ patch... i/os are about same across the
runs.
High-level, no regression (probably some benefit discernible at this
macro-level).
I'll commit the patch.
> Apply the Leader/Followers pattern to RpcServer's Reader
> --------------------------------------------------------
>
> Key: HBASE-14479
> URL: https://issues.apache.org/jira/browse/HBASE-14479
> Project: HBase
> Issue Type: Improvement
> Components: IPC/RPC, Performance
> Reporter: Hiroshi Ikeda
> Assignee: Hiroshi Ikeda
> Priority: Minor
> Attachments: HBASE-14479-V2 (1).patch, HBASE-14479-V2.patch,
> HBASE-14479-V2.patch, HBASE-14479.patch, gc.png, gets.png, io.png, median.png
>
>
> {{RpcServer}} uses multiple selectors to read data for load distribution, but
> the distribution is just done by round-robin. It is uncertain, especially for
> long run, whether load is equally divided and resources are used without
> being wasted.
> Moreover, multiple selectors may cause excessive context switches which give
> priority to low latency (while we just add the requests to queues), and it is
> possible to reduce throughput of the whole server.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)