【fix】添加虚拟路由管理

This commit is contained in:
wujiawei
2025-05-07 11:09:19 +08:00
parent 965142793c
commit 96929044fa
37 changed files with 356 additions and 157 deletions

View File

@ -352,12 +352,20 @@ public class ClientAutoConfiguration {
public ClientHandleDistributeHttpClientProxyServerServerRouteTypeAdvanced clientHandleDistributeHttpClientProxyServerServerRouteTypeAdvanced() {
return new ClientHandleDistributeHttpClientProxyServerServerRouteTypeAdvanced();
}
@Bean
public ClientHandleDistributeHttpClientProxyServerServerRouteCloseTypeAdvanced clientHandleDistributeHttpClientProxyServerServerRouteCloseTypeAdvanced(){
return new ClientHandleDistributeHttpClientProxyServerServerRouteCloseTypeAdvanced();
}
@Bean
public ClientHandleDistributeHttpClientProxyServerClientRouteTypeAdvanced clientHandleDistributeHttpClientProxyServerClientRouteTypeAdvanced() {
return new ClientHandleDistributeHttpClientProxyServerClientRouteTypeAdvanced();
}
@Bean
public ClientHandleDistributeHttpClientProxyServerClientRouteCloseTypeAdvanced clientHandleDistributeHttpClientProxyServerClientRouteCloseTypeAdvanced(){
return new ClientHandleDistributeHttpClientProxyServerClientRouteCloseTypeAdvanced();
}
@Bean
public ClientHandleDistributeHttpClientProxyClientConnectionTransferSuccessfulAdvanced clientHandleDistributeHttpClientProxyClientConnectionTransferSuccessfulAdvanced() {
return new ClientHandleDistributeHttpClientProxyClientConnectionTransferSuccessfulAdvanced();

View File

@ -0,0 +1,37 @@
package org.framework.lazy.cloud.network.heartbeat.client.netty.proxy.http.advanced;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.payload.NettyChannelContext;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.payload.NettyProxyMsg;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.proxy.http.client.AbstractHandleHttpDistributeClientProxyServerClientRouteCloseTypeAdvanced;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.proxy.http.client.AbstractHandleHttpDistributeClientProxyServerClientRouteTypeAdvanced;
import org.framework.lazy.cloud.network.heartbeat.protocol.route.ClientProxyRoute;
import org.framework.lazy.cloud.network.heartbeat.protocol.route.RouteContext;
import org.framework.lazy.cloud.network.heartbeat.protocol.route.RouteType;
@Slf4j
public class ClientHandleDistributeHttpClientProxyServerClientRouteCloseTypeAdvanced extends
AbstractHandleHttpDistributeClientProxyServerClientRouteCloseTypeAdvanced<NettyProxyMsg> {
/**
* 处理当前数据
*
* @param nettyChannelContext 当前通道
* @param nettyProxyMsg 通道数据
*/
@Override
protected void doHandler(NettyChannelContext nettyChannelContext, NettyProxyMsg nettyProxyMsg) {
byte[] data = nettyProxyMsg.getData();
ClientProxyRoute clientProxyRoute = JSON.parseObject(data, ClientProxyRoute.class);
RouteType routeType = clientProxyRoute.getRouteType();
String virtualIp = clientProxyRoute.getVirtualIp();
String virtualPort = clientProxyRoute.getVirtualPort();
RouteContext.removeRoute(virtualIp,virtualPort,routeType);
}
}

View File

@ -0,0 +1,37 @@
package org.framework.lazy.cloud.network.heartbeat.client.netty.proxy.http.advanced;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.payload.NettyChannelContext;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.payload.NettyProxyMsg;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.proxy.http.client.AbstractHandleHttpDistributeClientProxyServerServerRouteCloseTypeAdvanced;
import org.framework.lazy.cloud.network.heartbeat.common.advanced.proxy.http.client.AbstractHandleHttpDistributeClientProxyServerServerRouteTypeAdvanced;
import org.framework.lazy.cloud.network.heartbeat.protocol.route.RouteContext;
import org.framework.lazy.cloud.network.heartbeat.protocol.route.RouteType;
import org.framework.lazy.cloud.network.heartbeat.protocol.route.ServerProxyRoute;
@Slf4j
public class ClientHandleDistributeHttpClientProxyServerServerRouteCloseTypeAdvanced extends
AbstractHandleHttpDistributeClientProxyServerServerRouteCloseTypeAdvanced<NettyProxyMsg> {
/**
* 处理当前数据
*
* @param nettyChannelContext 当前通道
* @param nettyProxyMsg 通道数据
*/
@Override
protected void doHandler(NettyChannelContext nettyChannelContext, NettyProxyMsg nettyProxyMsg) {
byte[] data = nettyProxyMsg.getData();
ServerProxyRoute serverProxyRoute = JSON.parseObject(data, ServerProxyRoute.class);
RouteType routeType = serverProxyRoute.getRouteType();
String virtualIp = serverProxyRoute.getVirtualIp();
String virtualPort = serverProxyRoute.getVirtualPort();
RouteContext.removeRoute(virtualIp,virtualPort,routeType);
}
}