mirror of
https://gitee.com/mirrors/Spring-Cloud-Alibaba.git
synced 2021-06-26 13:25:11 +08:00
fix(nacos): Repair to create a large number of Nacos*Service problems
This commit is contained in:
@@ -120,8 +120,8 @@ public class NacosServiceRegistry implements ServiceRegistry<Registration> {
|
||||
}
|
||||
|
||||
try {
|
||||
nacosDiscoveryProperties.namingMaintainServiceInstance().updateInstance(serviceId,
|
||||
instance);
|
||||
nacosDiscoveryProperties.namingMaintainServiceInstance()
|
||||
.updateInstance(serviceId, instance);
|
||||
}
|
||||
catch (Exception e) {
|
||||
throw new RuntimeException("update nacos instance status fail", e);
|
||||
|
@@ -46,16 +46,17 @@ import org.springframework.context.annotation.Configuration;
|
||||
public class NacosServiceRegistryAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
public NacosServiceRegistry nacosServiceRegistry(NacosDiscoveryProperties nacosDiscoveryProperties) {
|
||||
public NacosServiceRegistry nacosServiceRegistry(
|
||||
NacosDiscoveryProperties nacosDiscoveryProperties) {
|
||||
return new NacosServiceRegistry(nacosDiscoveryProperties);
|
||||
}
|
||||
|
||||
@Bean
|
||||
@ConditionalOnBean(AutoServiceRegistrationProperties.class)
|
||||
public NacosRegistration nacosRegistration(NacosDiscoveryProperties nacosDiscoveryProperties,
|
||||
public NacosRegistration nacosRegistration(
|
||||
NacosDiscoveryProperties nacosDiscoveryProperties,
|
||||
ApplicationContext context) {
|
||||
return new NacosRegistration(nacosDiscoveryProperties,
|
||||
context);
|
||||
return new NacosRegistration(nacosDiscoveryProperties, context);
|
||||
}
|
||||
|
||||
@Bean
|
||||
|
@@ -37,8 +37,7 @@ public class NacosRibbonClientConfiguration {
|
||||
@ConditionalOnMissingBean
|
||||
public ServerList<?> ribbonServerList(IClientConfig config,
|
||||
NacosDiscoveryProperties nacosDiscoveryProperties) {
|
||||
NacosServerList serverList = new NacosServerList(
|
||||
nacosDiscoveryProperties);
|
||||
NacosServerList serverList = new NacosServerList(nacosDiscoveryProperties);
|
||||
serverList.initWithNiwsConfig(config);
|
||||
return serverList;
|
||||
}
|
||||
|
@@ -54,7 +54,8 @@ public class NacosRule extends AbstractLoadBalancerRule {
|
||||
DynamicServerListLoadBalancer loadBalancer = (DynamicServerListLoadBalancer) getLoadBalancer();
|
||||
String name = loadBalancer.getName();
|
||||
|
||||
NamingService namingService = nacosDiscoveryProperties.namingServiceInstance();
|
||||
NamingService namingService = nacosDiscoveryProperties
|
||||
.namingServiceInstance();
|
||||
List<Instance> instances = namingService.selectInstances(name, true);
|
||||
if (CollectionUtils.isEmpty(instances)) {
|
||||
LOGGER.warn("no instance in service {}", name);
|
||||
|
@@ -68,7 +68,8 @@ public class NacosServiceDiscoveryTest {
|
||||
when(namingService.selectInstances(eq(serviceName), eq("DEFAULT"), eq(true)))
|
||||
.thenReturn(instances);
|
||||
|
||||
NacosServiceDiscovery serviceDiscovery = new NacosServiceDiscovery(nacosDiscoveryProperties);
|
||||
NacosServiceDiscovery serviceDiscovery = new NacosServiceDiscovery(
|
||||
nacosDiscoveryProperties);
|
||||
|
||||
List<ServiceInstance> serviceInstances = serviceDiscovery
|
||||
.getInstances(serviceName);
|
||||
@@ -106,7 +107,8 @@ public class NacosServiceDiscoveryTest {
|
||||
when(namingService.getServicesOfServer(eq(1), eq(Integer.MAX_VALUE),
|
||||
eq("DEFAULT"))).thenReturn(nacosServices);
|
||||
|
||||
NacosServiceDiscovery serviceDiscovery = new NacosServiceDiscovery(nacosDiscoveryProperties);
|
||||
NacosServiceDiscovery serviceDiscovery = new NacosServiceDiscovery(
|
||||
nacosDiscoveryProperties);
|
||||
|
||||
List<String> services = serviceDiscovery.getServices();
|
||||
|
||||
|
@@ -176,13 +176,13 @@ public class NacosAutoServiceRegistrationTests {
|
||||
}
|
||||
|
||||
private void checkoutEndpoint() throws Exception {
|
||||
NacosDiscoveryEndpoint nacosDiscoveryEndpoint = new NacosDiscoveryEndpoint(properties);
|
||||
NacosDiscoveryEndpoint nacosDiscoveryEndpoint = new NacosDiscoveryEndpoint(
|
||||
properties);
|
||||
Map<String, Object> map = nacosDiscoveryEndpoint.nacosDiscovery();
|
||||
|
||||
assertThat(properties).isEqualTo(map.get("NacosDiscoveryProperties"));
|
||||
assertThat(
|
||||
properties.namingServiceInstance().getSubscribeServices().toString())
|
||||
.isEqualTo(map.get("subscribe").toString());
|
||||
assertThat(properties.namingServiceInstance().getSubscribeServices().toString())
|
||||
.isEqualTo(map.get("subscribe").toString());
|
||||
}
|
||||
|
||||
@Configuration
|
||||
|
@@ -53,8 +53,7 @@ public class NacosServerListTests {
|
||||
when(namingService.selectInstances(anyString(), eq("DEFAULT"), eq(true)))
|
||||
.thenReturn(null);
|
||||
|
||||
NacosServerList serverList = new NacosServerList(
|
||||
nacosDiscoveryProperties);
|
||||
NacosServerList serverList = new NacosServerList(nacosDiscoveryProperties);
|
||||
List<NacosServer> servers = serverList.getInitialListOfServers();
|
||||
assertThat(servers).isEmpty();
|
||||
}
|
||||
@@ -80,8 +79,7 @@ public class NacosServerListTests {
|
||||
|
||||
IClientConfig clientConfig = mock(IClientConfig.class);
|
||||
when(clientConfig.getClientName()).thenReturn("test-service");
|
||||
NacosServerList serverList = new NacosServerList(
|
||||
nacosDiscoveryProperties);
|
||||
NacosServerList serverList = new NacosServerList(nacosDiscoveryProperties);
|
||||
serverList.initWithNiwsConfig(clientConfig);
|
||||
List<NacosServer> servers = serverList.getInitialListOfServers();
|
||||
assertThat(servers).hasSize(1);
|
||||
@@ -115,8 +113,7 @@ public class NacosServerListTests {
|
||||
|
||||
IClientConfig clientConfig = mock(IClientConfig.class);
|
||||
when(clientConfig.getClientName()).thenReturn("test-service");
|
||||
NacosServerList serverList = new NacosServerList(
|
||||
nacosDiscoveryProperties);
|
||||
NacosServerList serverList = new NacosServerList(nacosDiscoveryProperties);
|
||||
serverList.initWithNiwsConfig(clientConfig);
|
||||
List<NacosServer> servers = serverList.getInitialListOfServers();
|
||||
assertThat(servers).hasSize(1);
|
||||
@@ -154,8 +151,7 @@ public class NacosServerListTests {
|
||||
|
||||
IClientConfig clientConfig = mock(IClientConfig.class);
|
||||
when(clientConfig.getClientName()).thenReturn("test-service");
|
||||
NacosServerList serverList = new NacosServerList(
|
||||
nacosDiscoveryProperties);
|
||||
NacosServerList serverList = new NacosServerList(nacosDiscoveryProperties);
|
||||
serverList.initWithNiwsConfig(clientConfig);
|
||||
|
||||
List<NacosServer> servers = serverList.getUpdatedListOfServers();
|
||||
|
@@ -24,7 +24,11 @@ import com.alibaba.nacos.api.naming.pojo.Instance;
|
||||
/**
|
||||
* @author xiaojing
|
||||
*/
|
||||
public class NacosMockTest {
|
||||
public final class NacosMockTest {
|
||||
|
||||
private NacosMockTest() {
|
||||
|
||||
}
|
||||
|
||||
public static Instance serviceInstance(String serviceName, boolean isHealthy,
|
||||
Map<String, String> metadata) {
|
||||
|
Reference in New Issue
Block a user