作者 crossoverJie

:recycle: Refactoring code.

... ... @@ -45,8 +45,8 @@ cim.clear.route.request.url=http://45.78.28.220:8083/offLine
#cim.clear.route.request.url=http://localhost:8083/offLine
# 客户端唯一ID
cim.user.id=1551152636573
cim.user.userName=zhangsan
cim.user.id=1551267098213
cim.user.userName=test3
# 回调线程队列大小
cim.callback.thread.queue.size = 2
... ...
... ... @@ -14,7 +14,8 @@ public interface RouteHandle {
/**
* 再一批服务器里进行路由
* @param values
* @param key
* @return
*/
String routeServer(List<String> values) ;
String routeServer(List<String> values,String key) ;
}
... ...
... ... @@ -33,9 +33,7 @@ public abstract class AbstractConsistentHash {
*/
protected abstract String getFirstNodeValue(String value);
public String process(List<String> values){
String key = values.get(0);
values.remove(0) ;
public String process(List<String> values,String key){
for (String value : values) {
add(hash(value), value);
... ...
... ... @@ -15,7 +15,7 @@ public class ConsistentHashHandle implements RouteHandle {
private AbstractConsistentHash hash = new SortArrayMapConsistentHash();
@Override
public String routeServer(List<String> values) {
return hash.process(values);
public String routeServer(List<String> values, String key) {
return hash.process(values, key);
}
}
... ...
... ... @@ -16,7 +16,7 @@ public class LoopHandle implements RouteHandle {
private AtomicLong index = new AtomicLong();
@Override
public String routeServer(List<String> values) {
public String routeServer(List<String> values,String key) {
if (values.size() == 0) {
throw new RuntimeException("CIM 服务器可用服务列表为空");
}
... ...
... ... @@ -15,11 +15,11 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("zhangsan") ;
strings.add("") ;
for (int i = 0; i < 10; i++) {
strings.add("127.0.0." + i) ;
}
String process = map.process(strings);
String process = map.process(strings,"zhangsan");
System.out.println(process);
Assert.assertEquals("127.0.0.8",process);
... ... @@ -30,11 +30,10 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("zhangsan2");
for (int i = 0; i < 10; i++) {
strings.add("127.0.0." + i) ;
}
String process = map.process(strings);
String process = map.process(strings,"zhangsan2");
System.out.println(process);
Assert.assertEquals("127.0.0.4",process);
... ... @@ -45,11 +44,10 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("1551253899106") ;
for (int i = 0; i < 10; i++) {
strings.add("127.0.0." + i) ;
}
String process = map.process(strings);
String process = map.process(strings,"1551253899106");
System.out.println(process);
Assert.assertEquals("127.0.0.6",process);
... ... @@ -61,11 +59,10 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("1551253899106") ;
strings.add("45.78.28.220:9000:8081") ;
strings.add("45.78.28.220:9100:9081") ;
String process = map.process(strings);
String process = map.process(strings,"1551253899106");
System.out.println(process);
Assert.assertEquals("45.78.28.220:9000:8081",process);
... ... @@ -75,12 +72,11 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("1551253899106") ;
strings.add("45.78.28.220:9000:8081") ;
strings.add("45.78.28.220:9100:9081") ;
strings.add("45.78.28.220:9100:10081") ;
String process = map.process(strings);
String process = map.process(strings,"1551253899106");
System.out.println(process);
Assert.assertEquals("45.78.28.220:9100:10081",process);
... ... @@ -91,12 +87,11 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("1551253899106") ;
strings.add("45.78.28.220:9000:8081") ;
strings.add("45.78.28.220:9100:9081") ;
strings.add("45.78.28.220:9100:10081") ;
String process = map.process(strings);
String process = map.process(strings,"1551253899106");
System.out.println(process);
Assert.assertEquals("45.78.28.220:9100:10081",process);
... ... @@ -106,15 +101,17 @@ public class SortArrayMapConsistentHashTest {
AbstractConsistentHash map = new SortArrayMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("1551253899106") ;
strings.add("45.78.28.220:9000:8081") ;
strings.add("45.78.28.220:9100:9081") ;
strings.add("45.78.28.220:9100:10081") ;
strings.add("45.78.28.220:9100:00081") ;
String process = map.process(strings);
String process = map.process(strings,"1551253899106");
System.out.println(process);
Assert.assertEquals("45.78.28.220:9100:10081",process);
}
}
\ No newline at end of file
... ...
... ... @@ -13,11 +13,10 @@ public class TreeMapConsistentHashTest {
AbstractConsistentHash map = new TreeMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("zhangsan") ;
for (int i = 0; i < 10; i++) {
strings.add("127.0.0." + i) ;
}
String process = map.process(strings);
String process = map.process(strings,"zhangsan");
System.out.println(process);
Assert.assertEquals("127.0.0.8",process);
}
... ... @@ -29,11 +28,10 @@ public class TreeMapConsistentHashTest {
AbstractConsistentHash map = new TreeMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("zhangsan2");
for (int i = 0; i < 10; i++) {
strings.add("127.0.0." + i) ;
}
String process = map.process(strings);
String process = map.process(strings,"zhangsan2");
System.out.println(process);
Assert.assertEquals("127.0.0.4",process);
... ... @@ -45,11 +43,10 @@ public class TreeMapConsistentHashTest {
AbstractConsistentHash map = new TreeMapConsistentHash() ;
List<String> strings = new ArrayList<String>();
strings.add("1551253899106") ;
for (int i = 0; i < 10; i++) {
strings.add("127.0.0." + i) ;
}
String process = map.process(strings);
String process = map.process(strings,"1551253899106");
System.out.println(process);
Assert.assertEquals("127.0.0.6",process);
... ...