diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/pom.xml b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/pom.xml
deleted file mode 100644
index b8cc59451..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/pom.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
- 4.0.0
-
- camellia-http-accelerate-proxy-bootstrap
- 1.2.30-SNAPSHOT
-
-
- com.netease.nim
- camellia-http-accelerate-proxy
- 1.2.30-SNAPSHOT
-
-
-
-
- com.netease.nim
- camellia-http-accelerate-proxy-core
- 1.2.30-SNAPSHOT
-
-
- ch.qos.logback
- logback-classic
- 1.2.11
-
-
- io.netty.incubator
- netty-incubator-codec-native-quic
- ${netty-incubator-codec-native-quic.version}
- osx-x86_64
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 2.0.2
-
-
- 1.8
- UTF-8
-
-
-
-
-
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/java/com/netease/nim/camellia/sidecar/proxy/bootstrap/Application.java b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/java/com/netease/nim/camellia/sidecar/proxy/bootstrap/Application.java
deleted file mode 100644
index 4775e0155..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/java/com/netease/nim/camellia/sidecar/proxy/bootstrap/Application.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.netease.nim.camellia.sidecar.proxy.bootstrap;
-
-import com.netease.nim.camellia.http.accelerate.proxy.core.Bootstrap;
-
-public class Application {
-
- public static void main(String[] args) {
- new Bootstrap().start();
- }
-}
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/logback.xml b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/logback.xml
deleted file mode 100644
index 7b31a6d14..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/logback.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
- %d %-5p %t %X %c{1}:%L - %m%n
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/proxy.properties b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/proxy.properties
deleted file mode 100644
index 9c5211c8e..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/proxy.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-
-## 面向本地nginx
-http.accelerate.proxy.port=11800
-
-## 面向远端的proxy
-transport.tcp.server.port=11600
-transport.quic.server.port=11500
-
-## 转发配置
-transport.route.config=transport_route.json
-
-## upstream配置
-upstream.route.config=upstream_route.json
-
-## 面向本地的console-server
-console.port=11700
\ No newline at end of file
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/transport_route.json b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/transport_route.json
deleted file mode 100644
index 40cc01cd6..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/transport_route.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "servers":
- [
- {
- "server": "default",
- "type": "tcp",
- "connect": 3,
- "addrs":
- [
- "127.0.0.1:11600"
- ]
- },
- {
- "server": "quic_server",
- "type": "quic",
- "connect": 1,
- "addrs":
- [
- "127.0.0.1:11500"
- ]
- }
- ],
- "routes":
- [
- {
- "type": "match_host",
- "host": "api.netease.im",
- "server": "quic_server"
- },
- {
- "type": "match_host",
- "host": "lbs.netease.im",
- "server": "tcp",
- "backupServer": "quic_server"
- },
- {
- "type": "match_host",
- "host": "www.baidu.com",
- "server": "default"
- },
- {
- "type": "match_all",
- "server": "default"
- }
- ]
-}
\ No newline at end of file
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/upstream_route.json b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/upstream_route.json
deleted file mode 100644
index 6abd0d2d4..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-bootstrap/src/main/resources/upstream_route.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "upstreams":
- [
- {
- "upstream": "yunxin-api",
- "type": "http",
- "heartbeatUri": "/",
- "heartbeatTimeout": 1000,
- "addrs":
- [
- "http://59.111.183.225:80"
- ]
- },
- {
- "upstream": "yunxin-lbs",
- "type": "http",
- "heartbeatUri": "/",
- "heartbeatTimeout": 1000,
- "addrs":
- [
- "http://59.111.211.9:80"
- ]
- },
- {
- "upstream": "baidu",
- "type": "http",
- "heartbeatUri": "/index.html",
- "heartbeatTimeout": 1000,
- "addrs":
- [
- "https://www.baidu.com"
- ]
- }
- ],
- "routes":
- [
- {
- "type": "match_host",
- "host": "api.netease.im",
- "upstream": "yunxin-api"
- },
- {
- "type": "match_host",
- "host": "lbs.netease.im",
- "upstream": "yunxin-lbs"
- },
- {
- "type": "match_host",
- "host": "www.baidu.com",
- "upstream": "baidu"
- },
- {
- "type": "match_all",
- "upstream": "baidu"
- }
- ]
-}
\ No newline at end of file
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/pom.xml b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/pom.xml
deleted file mode 100644
index f5b22811e..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/pom.xml
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
- 4.0.0
-
- camellia-http-accelerate-proxy-core
- 1.2.30-SNAPSHOT
-
-
- com.netease.nim
- camellia-http-accelerate-proxy
- 1.2.30-SNAPSHOT
-
-
-
-
- com.netease.nim
- camellia-codec
- 1.2.30-SNAPSHOT
-
-
- com.netease.nim
- camellia-tools
- 1.2.30-SNAPSHOT
-
-
- com.netease.nim
- camellia-http-console
- 1.2.30-SNAPSHOT
-
-
- io.netty
- netty-all
- ${netty.version}
-
-
- com.squareup.okhttp3
- okhttp
- ${okhttp4.version}
-
-
- io.netty.incubator
- netty-incubator-codec-native-quic
- ${netty-incubator-codec-native-quic.version}
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- ${maven-compiler-plugin.version}
-
-
- ${java.version}
- UTF-8
-
-
-
- org.apache.maven.plugins
- maven-source-plugin
- ${maven-source-plugin.version}
-
-
- attach-sources
- verify
-
- jar-no-fork
-
-
-
-
-
-
-
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/Bootstrap.java b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/Bootstrap.java
deleted file mode 100644
index 6b0de031c..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/Bootstrap.java
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.netease.nim.camellia.http.accelerate.proxy.core;
-
-import com.netease.nim.camellia.http.accelerate.proxy.core.console.ProxyConsoleServer;
-import com.netease.nim.camellia.http.accelerate.proxy.core.route.transport.DefaultTransportRouter;
-import com.netease.nim.camellia.http.accelerate.proxy.core.route.transport.ITransportRouter;
-import com.netease.nim.camellia.http.accelerate.proxy.core.route.upstream.DefaultUpstreamRouter;
-import com.netease.nim.camellia.http.accelerate.proxy.core.route.upstream.IUpstreamRouter;
-import com.netease.nim.camellia.http.accelerate.proxy.core.transport.ITransportServer;
-import com.netease.nim.camellia.http.accelerate.proxy.core.transport.quic.TransportQuicServer;
-import com.netease.nim.camellia.http.accelerate.proxy.core.transport.tcp.TransportTcpServer;
-import com.netease.nim.camellia.http.accelerate.proxy.core.conf.DynamicConf;
-import com.netease.nim.camellia.http.accelerate.proxy.core.proxy.IHttpAccelerateProxy;
-import com.netease.nim.camellia.http.accelerate.proxy.core.proxy.HttpAccelerateProxy;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.concurrent.TimeUnit;
-
-/**
- *
- *
- * 1、user
- * ==https==
- * 2、nginx
- * ==http==
- * 3、IHttpAccelerateProxy -- ITransportRouter -- ITransportClient
- * ==tcp/quic==
- * 4、ITransportServer -- IUpstreamRouter -- IUpstreamClient
- * ==http==
- * 5、nginx
- * ==http==
- * 6、后端
- *
- *
- *
- * 通过http-accelerate-proxy,来连接距离遥远的两个nginx,解决nginx_upstream不支持http1.0/1.1外其他协议导致的问题:
- * 1)连接复用问题
- * 2)丢包问题
- * 3)业务复杂逻辑问题
- *
- *
- *
- * Created by caojiajun on 2023/7/6
- */
-public class Bootstrap {
-
- private static final Logger logger = LoggerFactory.getLogger(Bootstrap.class);
-
- /**
- * 启动
- */
- public void start() {
- try {
- //1、配置
- DynamicConf.init();
-
- //2、upstream路由
- IUpstreamRouter upstreamRouter = new DefaultUpstreamRouter();
- upstreamRouter.start();
-
- //3、转发server
- ITransportServer transportTcpServer = new TransportTcpServer(upstreamRouter);
- transportTcpServer.start();
-
- //3、转发server
- ITransportServer transportQuicServer = new TransportQuicServer(upstreamRouter);
- transportQuicServer.start();
-
- //4、转发路由
- ITransportRouter transportRouter = new DefaultTransportRouter();
- transportRouter.start();
-
- //5、proxy
- IHttpAccelerateProxy proxy = new HttpAccelerateProxy(transportRouter);
- proxy.start();
-
- //6、console
- ProxyConsoleServer consoleServer = new ProxyConsoleServer();
- consoleServer.start(transportRouter, upstreamRouter, proxy, transportTcpServer, transportQuicServer);
-
- logger.info("camellia http accelerate proxy start success!");
- } catch (Exception e) {
- logger.error("camellia http accelerate proxy start error!", e);
- try {
- TimeUnit.SECONDS.sleep(1);
- } catch (InterruptedException ex) {
- throw new RuntimeException(ex);
- }
- System.exit(-1);
- }
- }
-}
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/conf/ConfigurationUtil.java b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/conf/ConfigurationUtil.java
deleted file mode 100644
index c5423de76..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/conf/ConfigurationUtil.java
+++ /dev/null
@@ -1,145 +0,0 @@
-package com.netease.nim.camellia.http.accelerate.proxy.core.conf;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.*;
-import java.nio.charset.StandardCharsets;
-import java.util.Map;
-import java.util.Properties;
-
-/**
- *
- * Created by hzcaojiajun on 2018/7/18.
- */
-public class ConfigurationUtil {
-
- private static final Logger logger = LoggerFactory.getLogger(ConfigurationUtil.class);
-
- public static Properties load(String path) {
- try {
- InputStream inputStream = ClassLoader.getSystemResourceAsStream(path);
- if (inputStream == null) {
- return null;
- }
- Properties prop = new Properties();
- prop.load(inputStream);
- return prop;
- } catch (Exception e) {
- logger.error("load error", e);
- return null;
- }
- }
-
- public static String getJsonString(String path) {
- byte[] buffer = null;
- FileInputStream fis = null;
- ByteArrayOutputStream bos = null;
- try {
- File file = new File(path);
- fis = new FileInputStream(file);
- bos = new ByteArrayOutputStream(1024);
- byte[] b = new byte[1024];
- int n;
- while ((n = fis.read(b)) != -1) {
- bos.write(b, 0, n);
- }
- buffer = bos.toByteArray();
- } catch (Exception e) {
- logger.error(e.getMessage(), e);
- } finally {
- if (bos != null) {
- try {
- bos.close();
- } catch (IOException e) {
- logger.error(e.getMessage(), e);
- }
- }
- if (fis != null) {
- try {
- fis.close();
- } catch (IOException e) {
- logger.error(e.getMessage(), e);
- }
- }
- }
- if (buffer == null) return null;
- return new String(buffer, StandardCharsets.UTF_8);
- }
-
- public static Properties loadByFilePath(String path) {
- FileInputStream fis = null;
- try {
- File file = new File(path);
- if (!file.exists()) {
- logger.warn("{} not exists", path);
- return null;
- }
- fis = new FileInputStream(path);
- Properties prop = new Properties();
- prop.load(fis);
- return prop;
- } catch (Exception e) {
- logger.error("loadByFilePath error", e);
- return null;
- } finally {
- if (fis != null) {
- try {
- fis.close();
- } catch (IOException e) {
- logger.error("close error", e);
- }
- }
- }
- }
-
- public static Integer getInteger(Map properties, String key, Integer defaultValue) {
- try {
- Object v = properties.get(key);
- if (v == null) return defaultValue;
- return Integer.parseInt(String.valueOf(v));
- } catch (Exception e) {
- return defaultValue;
- }
- }
-
- public static Double getDouble(Map properties, String key, Double defaultValue) {
- try {
- Object v = properties.get(key);
- if (v == null) return defaultValue;
- return Double.parseDouble(String.valueOf(v));
- } catch (Exception e) {
- return defaultValue;
- }
- }
-
- public static Long getLong(Map properties, String key, Long defaultValue) {
- try {
- Object v = properties.get(key);
- if (v == null) return defaultValue;
- return Long.parseLong(String.valueOf(v));
- } catch (Exception e) {
- return defaultValue;
- }
- }
-
- public static Boolean getBoolean(Map properties, String key, Boolean defaultValue) {
- try {
- Object v = properties.get(key);
- if (v == null) return defaultValue;
- return Boolean.parseBoolean(String.valueOf(v));
- } catch (Exception e) {
- return defaultValue;
- }
- }
-
- public static String get(Map properties, String key, String defaultValue) {
- try {
- Object v = properties.get(key);
- if (v == null) return defaultValue;
- return String.valueOf(v);
- } catch (Exception e) {
- return defaultValue;
- }
- }
-}
diff --git a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/conf/DynamicConf.java b/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/conf/DynamicConf.java
deleted file mode 100644
index af8fcc7a0..000000000
--- a/camellia-http-accelerate-proxy/camellia-http-accelerate-proxy-core/src/main/java/com/netease/nim/camellia/http/accelerate/proxy/core/conf/DynamicConf.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.netease.nim.camellia.http.accelerate.proxy.core.conf;
-
-import com.netease.nim.camellia.tools.executor.CamelliaThreadFactory;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.*;
-import java.util.concurrent.Executors;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicBoolean;
-
-/**
- * Created by caojiajun on 2023/7/7
- */
-public class DynamicConf {
-
- private static final Logger logger = LoggerFactory.getLogger(DynamicConf.class);
-
- private static Map conf = new HashMap<>();
- private static final AtomicBoolean hasInit = new AtomicBoolean(false);
-
- public static void init() {
- if (hasInit.compareAndSet(false, true)) {
- reload();
- Executors.newSingleThreadScheduledExecutor(new CamelliaThreadFactory("dynamic-conf"))
- .scheduleAtFixedRate(DynamicConf::reload, 60, 60, TimeUnit.SECONDS);
- }
- }
-
- public static void reload() {
- Properties props = ConfigurationUtil.load("proxy.properties");
- Map map = new HashMap<>();
- if (props != null) {
- for (Map.Entry