From 9158649ff8f9e052225ed989b4b708fa4f16a55f Mon Sep 17 00:00:00 2001 From: lepdou Date: Fri, 27 May 2022 18:47:48 +0800 Subject: [PATCH] fix some bugs and optimize example --- .../ratelimit/filter/QuotaCheckReactiveFilter.java | 3 ++- .../ratelimit/filter/QuotaCheckServletFilter.java | 2 +- .../router/PolarisLoadBalancerCompositeRule.java | 5 ++++- .../router-grayrelease-backend/pom.xml | 12 +----------- .../src/main/resources/bootstrap.yml | 2 -- .../router-grayrelease-frontend/pom.xml | 12 +----------- .../src/main/resources/bootstrap.yml | 2 -- .../router-grayrelease-gateway/pom.xml | 11 +---------- .../src/main/resources/bootstrap.yml | 2 -- .../router-grayrelease-middle/pom.xml | 12 +----------- .../src/main/resources/bootstrap.yml | 2 -- 11 files changed, 11 insertions(+), 54 deletions(-) diff --git a/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckReactiveFilter.java b/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckReactiveFilter.java index b3f300e1..7340c73d 100644 --- a/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckReactiveFilter.java +++ b/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckReactiveFilter.java @@ -99,8 +99,9 @@ public class QuotaCheckReactiveFilter implements WebFilter, Ordered { Map labels = getRequestLabels(exchange, localNamespace, localService); try { + String path = exchange.getRequest().getURI().getPath(); QuotaResponse quotaResponse = QuotaCheckUtils.getQuota(limitAPI, - localNamespace, localService, 1, labels, null); + localNamespace, localService, 1, labels, path); if (quotaResponse.getCode() == QuotaResultCode.QuotaResultLimited) { ServerHttpResponse response = exchange.getResponse(); diff --git a/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckServletFilter.java b/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckServletFilter.java index bbb183ac..08767b72 100644 --- a/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckServletFilter.java +++ b/spring-cloud-starter-tencent-polaris-ratelimit/src/main/java/com/tencent/cloud/polaris/ratelimit/filter/QuotaCheckServletFilter.java @@ -95,7 +95,7 @@ public class QuotaCheckServletFilter extends OncePerRequestFilter { try { QuotaResponse quotaResponse = QuotaCheckUtils.getQuota(limitAPI, - localNamespace, localService, 1, labels, null); + localNamespace, localService, 1, labels, request.getRequestURI()); if (quotaResponse.getCode() == QuotaResultCode.QuotaResultLimited) { response.setStatus(polarisRateLimitProperties.getRejectHttpCode()); diff --git a/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/PolarisLoadBalancerCompositeRule.java b/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/PolarisLoadBalancerCompositeRule.java index 0c9b285d..4b9dc590 100644 --- a/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/PolarisLoadBalancerCompositeRule.java +++ b/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/PolarisLoadBalancerCompositeRule.java @@ -54,6 +54,7 @@ import com.tencent.polaris.router.api.rpc.ProcessRoutersRequest; import com.tencent.polaris.router.api.rpc.ProcessRoutersResponse; import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; /** * @@ -195,7 +196,9 @@ public class PolarisLoadBalancerCompositeRule extends AbstractLoadBalancerRule { public AbstractLoadBalancerRule getRule() { String loadBalanceStrategy = loadBalancerProperties.getStrategy(); - + if (StringUtils.isEmpty(loadBalanceStrategy)) { + return new ZoneAvoidanceRule(); + } switch (loadBalanceStrategy) { case STRATEGY_RANDOM: return new RandomRule(); diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/pom.xml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/pom.xml index 5be88758..170f87ed 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/pom.xml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/pom.xml @@ -23,16 +23,6 @@ spring-cloud-starter-tencent-polaris-router - - spring-cloud-starter-tencent-polaris-circuitbreaker - com.tencent.cloud - - - - com.tencent.cloud - spring-cloud-starter-tencent-metadata-transfer - - org.springframework.boot spring-boot-starter-web @@ -76,4 +66,4 @@ - \ No newline at end of file + diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/src/main/resources/bootstrap.yml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/src/main/resources/bootstrap.yml index 30719c29..a6715a57 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/src/main/resources/bootstrap.yml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-backend/src/main/resources/bootstrap.yml @@ -9,8 +9,6 @@ spring: address: grpc://183.47.111.80:8091 namespace: default enabled: true - discovery: - service-list-refresh-interval: 1000 logging: level: org.springframework.cloud.gateway: info diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/pom.xml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/pom.xml index bae39c67..62524d2d 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/pom.xml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/pom.xml @@ -23,16 +23,6 @@ spring-cloud-starter-tencent-polaris-router - - spring-cloud-starter-tencent-polaris-circuitbreaker - com.tencent.cloud - - - - com.tencent.cloud - spring-cloud-starter-tencent-metadata-transfer - - org.springframework.boot spring-boot-starter-web @@ -76,4 +66,4 @@ - \ No newline at end of file + diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/src/main/resources/bootstrap.yml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/src/main/resources/bootstrap.yml index f21e7306..cb7232d1 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/src/main/resources/bootstrap.yml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-frontend/src/main/resources/bootstrap.yml @@ -9,8 +9,6 @@ spring: address: grpc://183.47.111.80:8091 namespace: default enabled: true - discovery: - service-list-refresh-interval: 1000 logging: level: org.springframework.cloud.gateway: info diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/pom.xml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/pom.xml index f8dc0ea3..e847b465 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/pom.xml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/pom.xml @@ -28,20 +28,11 @@ spring-cloud-starter-tencent-polaris-router - - spring-cloud-starter-tencent-polaris-circuitbreaker - com.tencent.cloud - - org.springframework.cloud spring-cloud-starter-openfeign - - com.tencent.cloud - spring-cloud-starter-tencent-metadata-transfer - @@ -59,4 +50,4 @@ - \ No newline at end of file + diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/src/main/resources/bootstrap.yml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/src/main/resources/bootstrap.yml index c44192ee..44041c26 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/src/main/resources/bootstrap.yml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-gateway/src/main/resources/bootstrap.yml @@ -9,8 +9,6 @@ spring: address: grpc://183.47.111.80:8091 namespace: default enabled: true - discovery: - service-list-refresh-interval: 1000 logging: level: org.springframework.cloud.gateway: info diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/pom.xml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/pom.xml index 90fbd3e1..87060aa9 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/pom.xml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/pom.xml @@ -23,16 +23,6 @@ spring-cloud-starter-tencent-polaris-router - - spring-cloud-starter-tencent-polaris-circuitbreaker - com.tencent.cloud - - - - com.tencent.cloud - spring-cloud-starter-tencent-metadata-transfer - - org.springframework.boot spring-boot-starter-web @@ -76,4 +66,4 @@ - \ No newline at end of file + diff --git a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/src/main/resources/bootstrap.yml b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/src/main/resources/bootstrap.yml index 7bfb668e..9638411e 100644 --- a/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/src/main/resources/bootstrap.yml +++ b/spring-cloud-tencent-examples/polaris-router-grayrelease-example/router-grayrelease-middle/src/main/resources/bootstrap.yml @@ -9,8 +9,6 @@ spring: address: grpc://183.47.111.80:8091 namespace: default enabled: true - discovery: - service-list-refresh-interval: 1000 logging: level: org.springframework.cloud.gateway: info