feignclient注解使用_Spring Cloud Nacos的使用

简介

Nacos的功能包含服务注册中心以及配置中心,Nacos=SpringCloud Config+Eureka ,

Nacos 官网:http://dubbo.apache.org/zh-cn/docs/user/references/registry/nacos.html

可以根据官网具体学习

Nacos服务注册中心

1、添加 Maven依赖管理

com.alibaba.cloud

spring-cloud-alibaba-dependencies

2.1.0.RELEASE

pom

import

2、启动Nacos服务端

启动文件Nacos安装目录 bin目录下startup.cmd

3、访问http://127.0.0.1:8848/nacos ,nacos默认端口8848 用户名 nacos 密码nacos,所有在线可用的服务都可以在服务列表中看到

6fea2718864f575eb061600c91b19ce6.png

4、修改服务提供者

  • 引入maven依赖

com.alibaba.cloud

spring-cloud-starter-alibaba-nacos-discovery

  • yml文件配置nacos服务等信息

server.port=8081 #服务器端端口

spring.application.name=nacos-provider //应用名称,nacos默认使用应用名称作为服务名称

spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 //nacos服务的地址

management.endpoints.web.exposure.include=* //监控端点

#spring.cloud.nacos.discovery=false 不想使用nacos时配置

  • 在启动类上添加@EnableDiscoveryClient注解

5、客户端调用

可用使用FeignClient或者RestTemplate 等HTTP请求调用服务提供者,客户端也需要配置naocs服务注册,调用服务提供者需要使用服务的名称调用。示例如下

@SpringBootApplication

@EnableDiscoveryClient

public class NacosConsumerApp {

@RestController

public class NacosController{

@Autowired

private LoadBalancerClient loadBalancerClient;

@Autowired

private RestTemplate restTemplate;

@Value("${spring.application.name}")

private String appName;

@GetMapping("/echo/app-name")

public String echoAppName(){

//Access through the combination of LoadBalanceClient and RestTemplate

ServiceInstance serviceInstance = loadBalancerClient.choose("nacos-provider");

String path = String.format("http://%s:%s/echo/%s",serviceInstance.getHost(),serviceInstance.getPort(),appName);

System.out.println("request path:" +path);

return restTemplate.getForObject(path,String.class);

}

}

//Instantiate RestTemplate Instance

@Bean

public RestTemplate restTemplate(){

return new RestTemplate();

}

public static void main(String[] args) {

SpringApplication.run(NacosConsumerApp.class,args);

}

}

启动服务提供者与客户端即可调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值