我试着像这样实现自己的代理:
LoadBalancingProxyClient loadBalancer = new LoadBalancingProxyClient()
.addHost(new URI("http://localhost:8080"))
.addHost(new URI("http://localhost:7777"))
.setConnectionsPerThread(20);
Undertow reverseProxy = Undertow.builder()
.addHttpListener(8081, "localhost")
.setIoThreads(1)
.setHandler(ProxyHandler.builder().setProxyClient(loadBalancer).setMaxRequestTime(30000).build())
.build();
reverseProxy.start();
我希望能够控制选择代理服务器。取决于要求身体我想选择localhost:8080
或localhost:7777
是否有可能在Undertow代理?
附:如果无法继续,我准备切换到另一个代理
我正在使用Jetty org.eclipse.jetty.proxy.ProxyServlet
管理动态后端列表。
您可以选择目标后端覆盖:org.eclipse.jetty.proxy.AbstractProxyServlet.rewriteTarget(HttpServletRequest)
(我也想使用Undertow)