From e63e586553c98eccd70b5f41f353da7bec90f16b Mon Sep 17 00:00:00 2001 From: fishtailfu Date: Thu, 3 Jul 2025 15:24:32 +0800 Subject: [PATCH] feat: support least connection loadbalancer --- .../PolarisLoadBalancerAutoConfiguration.java | 6 +++--- ...risShortestResponseTimeLoadBalancerConfigModifier.java | 8 ++++---- ...olarisShortestResponseTimeLoadBalancerProperties.java} | 3 +-- 3 files changed, 8 insertions(+), 9 deletions(-) rename spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/{PolairsShortestResponseTimeLoadBalancerProperties.java => PolarisShortestResponseTimeLoadBalancerProperties.java} (89%) diff --git a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisLoadBalancerAutoConfiguration.java b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisLoadBalancerAutoConfiguration.java index 9f71b86f8..c851430f0 100644 --- a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisLoadBalancerAutoConfiguration.java +++ b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisLoadBalancerAutoConfiguration.java @@ -35,7 +35,7 @@ import org.springframework.context.annotation.Configuration; * @author Haotian Zhang */ @Configuration(proxyBeanMethods = false) -@EnableConfigurationProperties +@EnableConfigurationProperties(PolarisShortestResponseTimeLoadBalancerProperties.class) @ConditionalOnDiscoveryEnabled @ConditionalOnPolarisEnabled @ConditionalOnProperty(value = "spring.cloud.polaris.loadbalancer.enabled", matchIfMissing = true) @@ -44,7 +44,7 @@ import org.springframework.context.annotation.Configuration; public class PolarisLoadBalancerAutoConfiguration { @Bean @ConditionalOnMissingBean - public PolarisShortestResponseTimeLoadBalancerConfigModifier polarisShortestResponseTimeLoadBalancerConfigModifier(PolairsShortestResponseTimeLoadBalancerProperties polairsShortestResponseTimeLoadBalancerProperties) { - return new PolarisShortestResponseTimeLoadBalancerConfigModifier(polairsShortestResponseTimeLoadBalancerProperties); + public PolarisShortestResponseTimeLoadBalancerConfigModifier polarisShortestResponseTimeLoadBalancerConfigModifier(PolarisShortestResponseTimeLoadBalancerProperties polarisShortestResponseTimeLoadBalancerProperties) { + return new PolarisShortestResponseTimeLoadBalancerConfigModifier(polarisShortestResponseTimeLoadBalancerProperties); } } diff --git a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerConfigModifier.java b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerConfigModifier.java index 74888a526..4874aed6b 100644 --- a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerConfigModifier.java +++ b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerConfigModifier.java @@ -7,16 +7,16 @@ import com.tencent.polaris.plugins.loadbalancer.shortestresponsetime.ShortestRes public class PolarisShortestResponseTimeLoadBalancerConfigModifier implements PolarisConfigModifier { - private final PolairsShortestResponseTimeLoadBalancerProperties polairsShortestResponseTimeLoadBalancerProperties; + private final PolarisShortestResponseTimeLoadBalancerProperties polarisShortestResponseTimeLoadBalancerProperties; public PolarisShortestResponseTimeLoadBalancerConfigModifier( - PolairsShortestResponseTimeLoadBalancerProperties polairsShortestResponseTimeLoadBalancerProperties) { - this.polairsShortestResponseTimeLoadBalancerProperties = polairsShortestResponseTimeLoadBalancerProperties; + PolarisShortestResponseTimeLoadBalancerProperties polarisShortestResponseTimeLoadBalancerProperties) { + this.polarisShortestResponseTimeLoadBalancerProperties = polarisShortestResponseTimeLoadBalancerProperties; } @Override public void modify(ConfigurationImpl configuration) { ShortestResponseTimeLoadBalanceConfig config = new ShortestResponseTimeLoadBalanceConfig(); - config.setSlidePeriod(polairsShortestResponseTimeLoadBalancerProperties.getSlidePeriod()); + config.setSlidePeriod(polarisShortestResponseTimeLoadBalancerProperties.getSlidePeriod()); configuration.getConsumer().getLoadbalancer().setPluginConfig("shortestResponseTime", config); } diff --git a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolairsShortestResponseTimeLoadBalancerProperties.java b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerProperties.java similarity index 89% rename from spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolairsShortestResponseTimeLoadBalancerProperties.java rename to spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerProperties.java index 4d9ddf4d0..5f67abb03 100644 --- a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolairsShortestResponseTimeLoadBalancerProperties.java +++ b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/loadbalancer/PolarisShortestResponseTimeLoadBalancerProperties.java @@ -4,7 +4,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.context.properties.ConfigurationProperties; @ConfigurationProperties(prefix = "spring.cloud.polaris.loadbalancer") -public class PolairsShortestResponseTimeLoadBalancerProperties { +public class PolarisShortestResponseTimeLoadBalancerProperties { /** * Slide period in milliseconds. */ @@ -19,5 +19,4 @@ public class PolairsShortestResponseTimeLoadBalancerProperties { this.slidePeriod = slidePeriod; } - }