[
https://issues.apache.org/jira/browse/HBASE-16275?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15394424#comment-15394424
]
huaxiang sun edited comment on HBASE-16275 at 7/26/16 7:44 PM:
---------------------------------------------------------------
Some numbers to share, tested with number of unique servers. The test program
is attached.
{code}
Server count 100 200 500 1000 2000
3000 5000
WithPatch 8(52) 13(228) 22(498) 47(1176) 150(3518)
309(7970) 855(20756)
WoPatch 8(102) 11(202) 16(341) 23(548) 34(823)
47(1114) 65(2192)
{code}
the format is like N(M), N is the max time spent by one thread in Milliseconds,
M is the total time spent by all threads. It gives rough idea.
was (Author: huaxiang):
Some numbers to share, tested with number of unique servers. The test program
is attached.
{code}
Server count 100 200 500 1000 2000
3000 5000
WithPatch 8(52) 13(228) 22(498) 47(1176) 150(3518)
309(7970) 855(20756)
WoPatch 8(102) 11(202) 16(341) 23(548) 34(823)
47(1114) 65(2192)
{code}
the format is like N(M), N is the max time spent by one thread in Milliseconds,
M is the total time spent by all threads. It gives rough idea.
> Change ServerManager#onlineServers from ConcurrentHashMap to
> ConcurrentSkipListMap
> ----------------------------------------------------------------------------------
>
> Key: HBASE-16275
> URL: https://issues.apache.org/jira/browse/HBASE-16275
> Project: HBase
> Issue Type: Improvement
> Reporter: huaxiang sun
> Assignee: huaxiang sun
> Priority: Minor
> Attachments: HBASE-16275-v001.patch, HBASE-16275-v002.patch,
> TestServerManagerPerf.java
>
>
> In Class ServerManager, onlineServers is declared as ConcurrentHashMap. In
> findServerWithSameHostnamePortWithLock(), it has to do a loop to find if
> there is a ServerName with same host:port pair. If replaced with
> ConcurrentSkipListMap, findServerWithSameHostnamePortWithLock() can be
> replaced with a O(logN) implementation.
> I run some performance comparison(test the function only), it seems that
> there is no difference if there are 1000 servers. With more servers,
> ConcurrentSkipListMap implementation is going to win big.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)