[ 
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:45 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)

Reply via email to