diff --git a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/SimpleHostRoutingFilter.java b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/SimpleHostRoutingFilter.java index f734a23a..2d3be0cd 100644 --- a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/SimpleHostRoutingFilter.java +++ b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/SimpleHostRoutingFilter.java @@ -13,14 +13,13 @@ import java.security.UnrecoverableKeyException; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import java.util.ArrayList; -import java.util.Collection; -import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Timer; import java.util.TimerTask; import java.util.concurrent.atomic.AtomicReference; +import javax.annotation.PreDestroy; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; @@ -86,7 +85,7 @@ public class SimpleHostRoutingFilter extends ZuulFilter { private static final AtomicReference CLIENT = new AtomicReference( newClient()); - private static final Timer CONNECTION_MANAGER_TIMER = new Timer(true); + private static final Timer CONNECTION_MANAGER_TIMER = new Timer("SimpleHostRoutingFilter.CONNECTION_MANAGER_TIMER", true); // cleans expired connections at an interval static { @@ -139,6 +138,11 @@ public class SimpleHostRoutingFilter extends ZuulFilter { this.helper = helper; } + @PreDestroy + public void stop() { + CONNECTION_MANAGER_TIMER.cancel(); + } + @Override public String filterType() { return "route";