diff --git a/pom.xml b/pom.xml
index 8da5c7b..de4be18 100644
--- a/pom.xml
+++ b/pom.xml
@@ -74,6 +74,12 @@
org.springframework.cloud
spring-cloud-starter-loadbalancer
+
+
+ org.springframework.cloud
+ spring-cloud-commons
+
+
diff --git a/src/main/java/com/sczx/gateway/config/LoadBalancerConfig.java b/src/main/java/com/sczx/gateway/config/LoadBalancerConfig.java
new file mode 100644
index 0000000..dacd4ad
--- /dev/null
+++ b/src/main/java/com/sczx/gateway/config/LoadBalancerConfig.java
@@ -0,0 +1,7 @@
+package com.sczx.gateway.config;
+
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+public class LoadBalancerConfig {
+}
diff --git a/src/main/java/com/sczx/gateway/controller/TestController.java b/src/main/java/com/sczx/gateway/controller/TestController.java
index 48c7dbc..107f4e0 100644
--- a/src/main/java/com/sczx/gateway/controller/TestController.java
+++ b/src/main/java/com/sczx/gateway/controller/TestController.java
@@ -3,6 +3,7 @@ package com.sczx.gateway.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.discovery.DiscoveryClient;
+import org.springframework.cloud.client.loadbalancer.LoadBalancerClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -13,12 +14,22 @@ public class TestController {
@Autowired
private DiscoveryClient discoveryClient;
+
+ @Autowired
+ private LoadBalancerClient loadBalancerClient;
+
@GetMapping("/test")
public String test() {
List instances = discoveryClient.getInstances("sczx_user");
if (instances == null || instances.isEmpty()) {
return "No instances found!";
}
- return "Found instance: " + instances.get(0).getUri();
+
+ ServiceInstance instance = loadBalancerClient.choose("sczx_user");
+ if (instance == null) {
+ return "No instance chosen!";
+ }
+
+ return "Chosen instance: " + instance.getUri();
}
}