微服务新秀之Nacos,看了就会,我说的( 五 )
- 步骤1 - 新建父工程
文章插图
- 步骤2 - 新建服务生产者
文章插图
application.yml如下:
文章插图
启动类如下:
文章插图
ProviderController.java如下:
文章插图
以上便是生成者的代码 , 其中关键点在于:1. 引入 spring-cloud-starter-alibaba-nacos-discovery jar包 2. 在启动类标注 @EnableDiscoveryClient 注解 3. 在 application.yml 中配置nacos服务中心的地址 4. 在 controller 中暴露服务
- 步骤3 - 新建服务消费者
文章插图
application.yml如下:
文章插图
启动类如下:
文章插图
ConsumerController.java如下:
文章插图
以上便是消费者的代码 , 其中关键点在于:1. 引入 spring-cloud-starter-alibaba-nacos-discovery jar包 2. 在启动类标注 @EnableDiscoveryClient 注解 3. 在 application.yml 中配置nacos服务中心的地址 4. 在 controller 中使用RestTemplate 调用服务 。
以上我们可以看到在Nacos中注册了两个服务 , 分别是 service-provider 和 service-consumer , 我们也可以在Nacos控制台看到:
文章插图
同样 , 服务注册也支持命名空间的隔离 , 我们只需在application.yml中添加配置:
server:port: 8083spring:application:name: service-consumercloud:nacos:discovery:server-addr: 127.0.0.1:8848# 命名空间namespace: dfa1c276-69f7-47d6-9903-6850b9c248f7cluster-name: DEFAULT
Feign 的使用Feign是Netflix开发的声明式、模板化的HTTP客户端 , Feign可以帮助我们更快捷、优雅地调用HTTP API 。Feign的使用方式也十分简单 , 几个步骤如下:
- 步骤1
@FeignClient(value = "http://kandian.youth.cn/index/service-provider") //生产者名称public interface ConsumerService {@GetMapping("/getData")String getDate();}
- 步骤2
- 步骤3
@RestControllerpublic class ConsumerController {@Autowiredprivate ConsumerService consumerService;@GetMapping("/getData")public String getData() {String date = consumerService.getDate();return "consumer consumer ---" + date;}}
结果:文章插图
- 亚马逊宣布停止为Parler提供托管服务
- 亚马逊员工权益组织呼吁AWS拒绝为Parler提供托管服务
- 普渡机器人获最佳商用服务机器人奖
- 「央广网评」扫码点餐 技术进步不能脱离人性化服务
- 尼康发布服务公告:将不再为镜头及配件提供全球联保服务
- 分析师预测苹果新服务可能包括播客+股票+和 邮件+
- 企业|技术快速迭代倒逼知识产权“贴身”服务,上海首家AI商标品牌指导站入驻徐汇西岸
- 虾米音乐正式关停:成立12年错失很多机会,将转型商业场景服务
- 阳狮报告:4成受访者认为自己的数据比免费服务更有价值
- 苹果服务收入大增 反垄断将成为最大挑战