mirror of
https://gitee.com/wujiawei1207537021/wu-lazy-cloud-network.git
synced 2025-06-04 20:37:56 +08:00
[fix] 优化负载获取可以使用的客户端
This commit is contained in:
parent
1924e87c7d
commit
3568292ac2
@ -56,7 +56,7 @@ public class NettyClientVisitorContext {
|
||||
public static <T> void removeVisitorSocket(String clientId, T visitorSocket) {
|
||||
List<Object> visitorSocketList = VISITOR_SOCKET.get(clientId);
|
||||
if(!ObjectUtils.isEmpty(visitorSocketList)){
|
||||
while(visitorSocketList.iterator().hasNext()){
|
||||
while (visitorSocketList.iterator().hasNext() && visitorSocketList.iterator().next().equals(visitorSocket)) {
|
||||
visitorSocketList.iterator().remove();
|
||||
}
|
||||
VISITOR_SOCKET.put(clientId,visitorSocketList);
|
||||
|
@ -57,17 +57,16 @@ public class NettyVisitorPortContext {
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除访客
|
||||
* 删除访客
|
||||
*
|
||||
* @param visitorPort 访客通道
|
||||
* @return 删除的访客通道
|
||||
* @param <T> 访客通道范型
|
||||
* @param <T> 访客通道范型
|
||||
*/
|
||||
public static Channel removeVisitorChannel(Integer visitorPort) {
|
||||
public static void removeVisitorChannel(Integer visitorPort) {
|
||||
Channel visitor = getVisitorChannel(visitorPort);
|
||||
if(visitor!=null){
|
||||
VISITOR_PORT_CHANNEL.remove(visitorPort);
|
||||
}
|
||||
return visitor;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -75,14 +74,12 @@ public class NettyVisitorPortContext {
|
||||
*
|
||||
* @param visitorPort 访客通道
|
||||
* @param <T> 访客通道范型
|
||||
* @return 删除的访客通道
|
||||
*/
|
||||
public static PermeateVisitorSocket removeVisitorSocket(Integer visitorPort) {
|
||||
public static void removeVisitorSocket(Integer visitorPort) {
|
||||
PermeateVisitorSocket visitor = getVisitorSocket(visitorPort);
|
||||
if (visitor != null) {
|
||||
VISITOR_PORT_SOCKET.remove(visitorPort);
|
||||
}
|
||||
return visitor;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,5 +1,8 @@
|
||||
package org.framework.lazy.cloud.network.heartbeat.common.socket;
|
||||
|
||||
/**
|
||||
* 渗透访客socket处理
|
||||
*/
|
||||
public interface PermeateVisitorSocket {
|
||||
|
||||
/**
|
||||
|
@ -102,8 +102,6 @@ public class NettyServerPermeateClientVisitorSocket implements PermeateVisitorSo
|
||||
visitor.close();
|
||||
// remove visitor
|
||||
NettyVisitorPortContext.removeVisitorChannel(visitorPort);
|
||||
// remove client this
|
||||
NettyClientVisitorContext.removeVisitorSocket(clientId,this);
|
||||
log.warn("关闭客户端 :【{}】 访客户端口:【{}】", clientId, visitorPort);
|
||||
} else {
|
||||
log.warn("关闭访客端口失败 未找到客户端通道 客户端 :【{}】 访客户端口:【{}】", clientId, visitorPort);
|
||||
|
@ -164,8 +164,9 @@ public class LazyInternalNetworkServerPermeateClientMappingApplicationImpl imple
|
||||
// 关闭端口
|
||||
for (NettyServerPermeateClientVisitorSocket nettyServerPermeateClientVisitorSocket : nettyServerPermeateClientVisitorSocketList) {
|
||||
nettyServerPermeateClientVisitorSocket.close();
|
||||
|
||||
}
|
||||
// 关闭通道 socket
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -213,6 +213,7 @@ public class LazyNettyClientStateApplicationImpl implements LazyNettyClientState
|
||||
nettyServerPermeateClientVisitorSocket.close();
|
||||
}
|
||||
}
|
||||
NettyClientVisitorContext.removeVisitorSockets(clientId);
|
||||
return lazyNettyClientStateRepository.remove(lazyNettyClientState);
|
||||
}
|
||||
|
||||
|
@ -1 +1 @@
|
||||
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><link rel="icon" href="favicon.png"/><title>网络渗透</title><script defer="defer" src="js/chunk-elementPlusIcon.43658a0c.js"></script><script defer="defer" src="js/chunk-elementPlus.020d8d3c.js"></script><script defer="defer" src="js/chunk-mockjs.8cd56b1d.js"></script><script defer="defer" src="js/chunk-vendors.1d01bf41.js"></script><script defer="defer" src="js/app.cd9d0368.js"></script><link href="css/chunk-elementPlus.f2db5e15.css" rel="stylesheet"><link href="css/app.a3bfec27.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but wu-vue-zone-ecology-net doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
||||
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><link rel="icon" href="favicon.png"/><title>网络渗透</title><script defer="defer" src="js/chunk-elementPlusIcon.43658a0c.js"></script><script defer="defer" src="js/chunk-elementPlus.020d8d3c.js"></script><script defer="defer" src="js/chunk-mockjs.8cd56b1d.js"></script><script defer="defer" src="js/chunk-vendors.1d01bf41.js"></script><script defer="defer" src="js/app.229d5e17.js"></script><link href="css/chunk-elementPlus.f2db5e15.css" rel="stylesheet"><link href="css/app.a3bfec27.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but wu-vue-zone-ecology-net doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user