[
https://issues.apache.org/jira/browse/HADOOP-7105?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12985904#action_12985904
]
Todd Lipcon commented on HADOOP-7105:
-------------------------------------
I think this patch could cause a missed notify - the Reader could be slow in
waking up from readSelector.select() and then not catch the notify() in
finishAdd(), right?
Here's an idea - what if Reader had a non-blocking queue of channels waiting to
be registered, and it processed those before entering select()? Then the
Listener wouldn't ever have to wait on the Reader to process the accept-queue,
but there wouldn't be a chance of missed notifies?
> [IPC] Improvement of lock mechanism in Listener and Reader thread
> -----------------------------------------------------------------
>
> Key: HADOOP-7105
> URL: https://issues.apache.org/jira/browse/HADOOP-7105
> Project: Hadoop Common
> Issue Type: Improvement
> Components: ipc
> Affects Versions: 0.21.0
> Reporter: jinglong.liujl
> Attachments: improveListenerLock.patch
>
>
> In many client cocurrent access, single thread Listener will become
> bottleneck. Many client can't be served, and get connection time out.
> To improve Listener capacity, we make 2 modification.
> 1. Tuning ipc.server.listen.queue.size to a larger value to avoid client
> retry.
> 2. In currently implement, Listener will call registerChannel(), and
> finishAdd() in Reader, which will request Reader synchronized lock. Listener
> will cost too many time in waiting for this lock.
> We have made test,
> ./bin/hadoop org.apache.hadoop.hdfs.NNThroughputBenchmark -op create
> -threads 10000 -files 10000
> case 1 : Currently
> can not pass. and report
> hadoop-rd101.jx.baidu.com/10.65.25.166:59310. Already tried 0 time(s).
> case 2 : tuning back log to 10240
> average cost : 1285.72 ms
> case 3 : tuning back log to 10240 , and improve lock mechanism in patch
> average cost : 941.32 ms
> performance in average cost will improve 26%
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.