Nacos 整合SpringCloud
1 新建一個module fourday ,在fourday 下面新建一個功能provider工程。
2 pom如下
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.1.1.RELEASE</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
3 properties如下
server.address=0.0.0.0
server.port=8093
spring.application.name=zyk-provider
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
4 啓動類如下
@SpringBootApplication
@EnableDiscoveryClient
public class Provider {
public static void main(String[] args) {
SpringApplication.run(Provider.class,args);
}
}
5 controller 如下
@RestController
public class ProviderController {
@RequestMapping("/provider/{name}")
public String testProvider (@PathVariable String name) {
return "Hello Discovery 8093" +name;
}
}
6 啓動 程序 訪問 http://localhost:8093/provider/nihao 測試程序是否正常
7 在fourday下面創建customer 工程。
pom和 provider一樣
8 application.properties 如下
server.port=8092
spring.application.name=zyk-service-customer
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
9 customer 的啓動類如下
@SpringBootApplication
@EnableDiscoveryClient
public class FourDayCustomer {
public static void main(String[] args) {
SpringApplication.run(FourDayCustomer.class, args);
}
}
10 controller 如下
@RestController
public class TestCustomerController {
@LoadBalanced
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
@Autowired
private RestTemplate restTemplate;
@GetMapping(value = "/test/{str}")
public String echo(@PathVariable String str) {
return restTemplate.getForObject("http://zyk-provider/provider/" + str, String.class);
}
}
11 測試 地址 http://localhost8092/test/nihao 查看結果。
12 啓動多個 provider節點
13 測試 地址 http://localhost8092/test/nihao 查看結果。