From e272f8d660ddac5f7320a9fe8d3445016ac01c91 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Tue, 2 Dec 2014 16:41:18 -0700 Subject: [PATCH] change caches to ConcurrentHashMap --- .../ribbon/RibbonLoadBalancerClient.java | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/ribbon/RibbonLoadBalancerClient.java b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/ribbon/RibbonLoadBalancerClient.java index 155ed24f..80996576 100644 --- a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/ribbon/RibbonLoadBalancerClient.java +++ b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/ribbon/RibbonLoadBalancerClient.java @@ -1,18 +1,21 @@ package org.springframework.cloud.netflix.ribbon; -import java.net.URI; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.TimeUnit; - import com.google.common.base.Throwables; -import com.netflix.loadbalancer.*; +import com.netflix.loadbalancer.BaseLoadBalancer; +import com.netflix.loadbalancer.ILoadBalancer; +import com.netflix.loadbalancer.Server; +import com.netflix.loadbalancer.ServerStats; import com.netflix.servo.monitor.Stopwatch; import org.springframework.cloud.client.ServiceInstance; import org.springframework.cloud.client.loadbalancer.LoadBalancerClient; import org.springframework.cloud.client.loadbalancer.LoadBalancerRequest; +import java.net.URI; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.TimeUnit; + /** * @author Spencer Gibb * @author Dave Syer @@ -23,8 +26,8 @@ public class RibbonLoadBalancerClient implements LoadBalancerClient { private SpringClientFactory clientFactory; - private Map balancers = new HashMap<>(); - private Map contexts = new HashMap<>(); + private Map balancers = new ConcurrentHashMap<>(); + private Map contexts = new ConcurrentHashMap<>(); public RibbonLoadBalancerClient(RibbonClientPreprocessor ribbonClientPreprocessor, SpringClientFactory clientFactory, List balancers) { this.ribbonClientPreprocessor = ribbonClientPreprocessor;