持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第20天,点击查看活动详情
bootstrap.yml
server:
port: 2001
servlet:
context-path: /cloud-nacos
spring:
application:
name: cloud-alibaba-nacos
cloud:
nacos:
discovery:
enabled: true
server-addr: 101.43.160.149:8848
namespace: 9862bd7f-2dc2-47a4-9c80-c6290c5c3e2b
metadata:
management:
context-path: ${server.servlet.context-path}/actuator
config:
enabled: false
# namespace:
# group:
pom依赖
<!-- spring cloud alibaba nacos discovery 依赖 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.3.RELEASE</version>
</dependency>
<!-- nacos config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
测试
服务发现
@EnableDiscoveryClient 从 E 版开始,可省略
@RestController
@RequestMapping("/discovery")
@AllArgsConstructor
public class ClientDiscoveryController {
private ClientDiscoveryService discoveryService;
@GetMapping("/instance")
public List<ServiceInstance> getInstance(@RequestParam(defaultValue = "cloud-alibaba-nacos") String serviceId){
return discoveryService.getInstance(serviceId);
}
}
@Service
@Slf4j
@AllArgsConstructor
public class ClientDiscoveryService {
private final DiscoveryClient discoveryClient;
public List<ServiceInstance> getInstance(String serviceId) {
List<ServiceInstance> instances = discoveryClient.getInstances(serviceId);
instances.forEach(instance->{
log.info("instance host:[{}],instance port:[{}]",instance.getHost(),instance.getPort());
});
return instances;
}
}