Skip to content

Commit 2ee2284

Browse files
committed
调整NacosServerListProcessor
1 parent 9cae26c commit 2ee2284

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@
173173
<groupId>cn.springcloud.gray</groupId>
174174
<artifactId>spring-cloud-gray-plugin-ribbon-nacos-discovery</artifactId>
175175
<version>${project.version}</version>
176-
</dependency>w1`
176+
</dependency>
177177

178178
<dependency>
179179
<groupId>cn.springcloud.gray</groupId>

spring-cloud-gray-plugins/spring-cloud-gray-plugin-ribbon-nacos-discovery/src/main/java/cn/springcloud/gray/client/plugin/ribbon/nacos/NacosServerListProcessor.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88
import com.alibaba.nacos.api.naming.NamingService;
99
import com.alibaba.nacos.api.naming.pojo.Instance;
1010
import com.netflix.loadbalancer.Server;
11+
import org.apache.commons.collections.CollectionUtils;
12+
import org.apache.commons.collections.ListUtils;
1113
import org.slf4j.Logger;
1214
import org.slf4j.LoggerFactory;
1315

@@ -29,8 +31,12 @@ public NacosServerListProcessor(GrayHoldoutServerProperties grayHoldoutServerPro
2931
@Override
3032
protected List<Server> getServers(String serviceId, List<Server> servers) {
3133
List<InstanceStatus> statusList = getHoldoutInstanceStatus(serviceId);
32-
return getInstances(serviceId).stream().filter(instance -> statusList.contains(getInstanceStatus(instance)))
34+
List<Server> holdoutServers = getInstances(serviceId).stream().filter(instance -> statusList.contains(getInstanceStatus(instance)))
3335
.map(NacosServer::new).collect(Collectors.toList());
36+
if(CollectionUtils.isEmpty(holdoutServers)){
37+
return servers;
38+
}
39+
return ListUtils.union(servers, holdoutServers);
3440
}
3541

3642

spring-cloud-gray-plugins/spring-cloud-gray-plugin-ribbon-nacos-discovery/src/main/java/cn/springcloud/gray/client/plugin/ribbon/nacos/configuration/GrayClientRibbonNacosAutoConfiguration.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,12 @@
2121
public class GrayClientRibbonNacosAutoConfiguration {
2222

2323

24-
@Bean
25-
public ServerListProcessor<Server> serverListProcessor(
26-
GrayHoldoutServerProperties grayHoldoutServerProperties, NacosDiscoveryProperties discoveryProperties){
27-
return new NacosServerListProcessor(grayHoldoutServerProperties, discoveryProperties.namingServiceInstance());
28-
}
24+
// @Bean
25+
// @ConditionalOnProperty(value = "gray.holdout-server.enabled")
26+
// public ServerListProcessor<Server> serverListProcessor(
27+
// GrayHoldoutServerProperties grayHoldoutServerProperties, NacosDiscoveryProperties discoveryProperties){
28+
// return new NacosServerListProcessor(grayHoldoutServerProperties, discoveryProperties.namingServiceInstance());
29+
// }
2930

3031

3132
@Bean

0 commit comments

Comments
 (0)