修复负载均衡器的问题

This commit is contained in:
Wxx 2024-07-31 22:11:09 +08:00
parent 87fc0e66b5
commit d50e0cb44c
3 changed files with 16 additions and 16 deletions

View File

@ -15,15 +15,15 @@ public class ConsistencyHashBalance implements LoadBalance {
private static final int VIRTUAL_NUM = 5; private static final int VIRTUAL_NUM = 5;
// 虚拟节点分配key是hash值value是虚拟节点服务器名称 // 虚拟节点分配key是hash值value是虚拟节点服务器名称
private static SortedMap<Integer, String> shards = new TreeMap<Integer, String>(); private SortedMap<Integer, String> shards = new TreeMap<Integer, String>();
// 真实节点列表 // 真实节点列表
private static List<String> realNodes = new LinkedList<String>(); private List<String> realNodes = new LinkedList<String>();
//模拟初始服务器 //模拟初始服务器
private static String[] servers =null; private String[] servers =null;
private static void init(List<String> serviceList) { private void init(List<String> serviceList) {
for (String server :serviceList) { for (String server :serviceList) {
realNodes.add(server); realNodes.add(server);
System.out.println("真实节点[" + server + "] 被添加"); System.out.println("真实节点[" + server + "] 被添加");
@ -41,7 +41,7 @@ public class ConsistencyHashBalance implements LoadBalance {
* @param node * @param node
* @return * @return
*/ */
public static String getServer(String node,List<String> serviceList) { public String getServer(String node,List<String> serviceList) {
init(serviceList); init(serviceList);
int hash = getHash(node); int hash = getHash(node);
Integer key = null; Integer key = null;

View File

@ -15,15 +15,15 @@ public class ConsistencyHashBalance implements LoadBalance {
private static final int VIRTUAL_NUM = 5; private static final int VIRTUAL_NUM = 5;
// 虚拟节点分配key是hash值value是虚拟节点服务器名称 // 虚拟节点分配key是hash值value是虚拟节点服务器名称
private static SortedMap<Integer, String> shards = new TreeMap<Integer, String>(); private SortedMap<Integer, String> shards = new TreeMap<Integer, String>();
// 真实节点列表 // 真实节点列表
private static List<String> realNodes = new LinkedList<String>(); private List<String> realNodes = new LinkedList<String>();
//模拟初始服务器 //模拟初始服务器
private static String[] servers =null; private String[] servers =null;
private static void init(List<String> serviceList) { private void init(List<String> serviceList) {
for (String server :serviceList) { for (String server :serviceList) {
realNodes.add(server); realNodes.add(server);
System.out.println("真实节点[" + server + "] 被添加"); System.out.println("真实节点[" + server + "] 被添加");
@ -41,7 +41,7 @@ public class ConsistencyHashBalance implements LoadBalance {
* @param node * @param node
* @return * @return
*/ */
public static String getServer(String node,List<String> serviceList) { public String getServer(String node,List<String> serviceList) {
init(serviceList); init(serviceList);
int hash = getHash(node); int hash = getHash(node);
Integer key = null; Integer key = null;

View File

@ -15,15 +15,15 @@ public class ConsistencyHashBalance implements LoadBalance {
private static final int VIRTUAL_NUM = 5; private static final int VIRTUAL_NUM = 5;
// 虚拟节点分配key是hash值value是虚拟节点服务器名称 // 虚拟节点分配key是hash值value是虚拟节点服务器名称
private static SortedMap<Integer, String> shards = new TreeMap<Integer, String>(); private SortedMap<Integer, String> shards = new TreeMap<Integer, String>();
// 真实节点列表 // 真实节点列表
private static List<String> realNodes = new LinkedList<String>(); private List<String> realNodes = new LinkedList<String>();
//模拟初始服务器 //模拟初始服务器
private static String[] servers =null; private String[] servers =null;
private static void init(List<String> serviceList) { private void init(List<String> serviceList) {
for (String server :serviceList) { for (String server :serviceList) {
realNodes.add(server); realNodes.add(server);
System.out.println("真实节点[" + server + "] 被添加"); System.out.println("真实节点[" + server + "] 被添加");
@ -41,7 +41,7 @@ public class ConsistencyHashBalance implements LoadBalance {
* @param node * @param node
* @return * @return
*/ */
public static String getServer(String node,List<String> serviceList) { public String getServer(String node,List<String> serviceList) {
init(serviceList); init(serviceList);
int hash = getHash(node); int hash = getHash(node);
Integer key = null; Integer key = null;
@ -60,7 +60,7 @@ public class ConsistencyHashBalance implements LoadBalance {
* *
* @param node * @param node
*/ */
public void addNode(String node) { public void addNode(String node) {
if (!realNodes.contains(node)) { if (!realNodes.contains(node)) {
realNodes.add(node); realNodes.add(node);
System.out.println("真实节点[" + node + "] 上线添加"); System.out.println("真实节点[" + node + "] 上线添加");