From 2cb44e639e73a4949412ad96345cf5966f563424 Mon Sep 17 00:00:00 2001 From: YunaiV <> Date: Fri, 24 Jan 2020 22:14:31 +0800 Subject: [PATCH] =?UTF-8?q?nacos=20=E6=B3=A8=E5=86=8C=E4=B8=AD=E5=BF=83?= =?UTF-8?q?=E7=A4=BA=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ontroller.java => ConsumerController.java} | 26 +++++++++---------- .../controller/ProviderController.java | 16 ++++++++++++ .../src/main/resources/application.yaml | 4 ++- 3 files changed, 32 insertions(+), 14 deletions(-) rename lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/{DemoController.java => ConsumerController.java} (61%) create mode 100644 lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ProviderController.java diff --git a/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/DemoController.java b/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ConsumerController.java similarity index 61% rename from lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/DemoController.java rename to lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ConsumerController.java index a3ada532..79dbdf91 100644 --- a/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/DemoController.java +++ b/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ConsumerController.java @@ -12,28 +12,28 @@ import org.springframework.web.client.RestTemplate; import java.util.List; @RestController -@RequestMapping("/demo") -public class DemoController { +@RequestMapping("/consumer") +public class ConsumerController { @NacosInjected private NamingService namingService; private RestTemplate restTemplate = new RestTemplate(); - @GetMapping("/provider") - public String provider() { - return "echo"; - } - - @GetMapping("/consumer") + @GetMapping("/demo") public String consumer() throws IllegalStateException, NacosException { // 获得实例 - List instances = namingService.getAllInstances("demo-application"); - // 获得首个实例,进行调用 - Instance instance = instances.stream().findFirst() - .orElseThrow(() -> new IllegalStateException("未找到对应的 Instance")); + Instance instance = null; + if (false) { + List instances = namingService.getAllInstances("demo-application"); + // 获得首个实例,进行调用 + instance = instances.stream().findFirst() + .orElseThrow(() -> new IllegalStateException("未找到对应的 Instance")); + } else { + instance = namingService.selectOneHealthyInstance("demo-application"); + } // 执行请求 - return restTemplate.getForObject("http://" + instance.toInetAddr() + "/demo/provider", + return restTemplate.getForObject("http://" + instance.toInetAddr() + "/provider/demo", String.class); } diff --git a/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ProviderController.java b/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ProviderController.java new file mode 100644 index 00000000..448965f9 --- /dev/null +++ b/lab-44/lab-44-nacos-discovery-demo/src/main/java/cn/iocoder/springboot/lab44/nacosdemo/controller/ProviderController.java @@ -0,0 +1,16 @@ +package cn.iocoder.springboot.lab44.nacosdemo.controller; + +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/provider") +public class ProviderController { + + @GetMapping("/demo") + public String provider() { + return "echo"; + } + +} diff --git a/lab-44/lab-44-nacos-discovery-demo/src/main/resources/application.yaml b/lab-44/lab-44-nacos-discovery-demo/src/main/resources/application.yaml index e51f4fd0..bfc37bc4 100644 --- a/lab-44/lab-44-nacos-discovery-demo/src/main/resources/application.yaml +++ b/lab-44/lab-44-nacos-discovery-demo/src/main/resources/application.yaml @@ -3,10 +3,12 @@ spring: name: demo-application # 应用名 nacos: + # Nacos 配置中心的配置项,对应 NacosDiscoveryProperties 配置类 discovery: server-addr: 127.0.0.1:18848 # Nacos 服务器地址 auto-register: true # 是否自动注册到 Nacos 中。默认为 false。 namespace: # 使用的 Nacos 的命名空间,默认为 null。 register: + service-name: ${spring.application.name} # 注册到 Nacos 的服务名 group-name: DEFAULT_GROUP # 使用的 Nacos 服务分组,默认为 DEFAULT_GROUP。 - cluster-name: cluster01 # 集群名,默认为空。 + cluster-name: # 集群名,默认为空。