服务消费者 | 学习笔记

简介: 快速学习服务消费者。

开发者学堂课程【Spring Cloud Alibaba Nacos 详解(下)服务消费者】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/725/detail/12935


服务消费者


内容介绍

一、服务消费者


一、服务消费者

以下步骤演示了如何结合 Nacos spring cloud rest 接口进行消费。

1pom.xml 的配置

服务消费者的微服务工程已经创建好了,下面是把依赖加进去。

com.alibaba.cloud

spring-cloud-starter-alibaba-nacos-discovery

org.springframework.boot

spring-boot-starter-web

org.springframework.cloud

spring-cloud-starter-openfeign

pom 文件的依赖加进去之后可以实现服务的消费者。

2application.yml 配置

server:

port:56020 #启动端口 命令行注入

spring:

application:

name:quickstart-consumer

cloud:

nacos:

discovery:

server-addr: 127.0.0.1:8848

3Provider (生产者)远程代理定义

@FeignClient(name = "quickstart-provider")

public interface ProviderClient {

@GetMapping("/service")

String service();

}

建一个单独的包来存放 Feign 的客户端,我们把它叫做 Client。在Client 下就可以建 Feign 的客户端。

@FeignClient (value = "quickstart-provider")

public interface ProviderClient {

@GetMapping("/service")

public String service);

}

Feign 的客户端就完成了。

4Consumer (消费者)服务实现

创建消费者的 Controller,目的是方便测试远程调用。

@RestController

public class ConsumerController {

private static final Logger LOG = LoggerFactorygetLogger

(ConsumerController.class);

//动态代理对象,内部远程调用服务生产者

@Autowired

private ProviderClient providerClient;

@GetMapping("/service")

public string service(){

//远程调用

String providerResult = providerClient.service(); return "consumer invoke" + "|"+ providerResult;

}

}

这就是整个消费方的实现。

5、启动 Consumer (消费者)

图片.png

@SpringBootApplication

@EnableDiscoveryClient

@EnableFeignClients

public class NacosConsumerApp{

public static void main(String[] args){

SpringApplication.run(NacosConsumerApp.class,args);

}

}

开始测试。

图片.png

图片.png

 

说明两个服务都注册成功,现在进行远程调用。

 图片.png

这个结果表示已经成功的调用服务生产方的地址。

这就是整个服务发现以及服务远程调用采用 Spring Cloud 服务来完成的整个过程。

相关文章
|
8月前
|
XML JSON API
深入研究:1688 商品详情 API 详解
1688商品详情API助力电商数据分析与决策!通过该接口,开发者可基于商品ID快速获取1688平台上商品的标题、价格、规格、图片等多维信息。企业能优化商品策略,提升竞争力。使用前需注册开发者账号、创建应用并申请权限,调用时传入必要参数(如app_key和商品ID),返回JSON/XML格式数据,涵盖商品基本信息、描述、图片及商家资料等内容。
|
安全 Windows
软件设计师软考题目解析03 --每日五题
本文解析了五道软件设计师软考的题目,包括软件项目风险、双端队列出队序列、数据流图中的错误分析、位图与矢量图的特点以及计算机感染特洛伊木马的现象,并分享了作者备考软考的心情。
95 2
HTML 颜色12
通过红、绿、蓝三色(RGB)从0至255的变化组合,可以产生1600万种不同颜色。下表展示了红色从0到255逐渐增加时的颜色变化,绿色和蓝色值固定为0。
|
弹性计算 运维 自然语言处理
阿里云操作系统智能助手OS Copilot实验测评报告
OS Copilot是针对Linux的智能助手,助力学习、运维及编程。用户界面直观,自然语言交互方便新手。官方文档详尽,但初次配置略复杂,适合学生和开发者。在提高代码编写和调试效率、系统学习上得分高,功能亮点包括代码生成、问答和命令执行。用户期待更多操作系统支持、自动错误分析和系统排查功能。
344 3
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的新闻资讯系统的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的新闻资讯系统的详细设计和实现
121 0
基于SpringBoot+Vue+uniapp微信小程序的新闻资讯系统的详细设计和实现
|
运维 监控 算法
解析极光算法:揭秘流量监控背后的关键
不知道大家有没有听说过极光算法(Aurora Algorithm),它在流量监控领域可是一位“大咖”!就好比是网络、通信和数据处理领域的“舵手”。它的任务很明确,就是要“识别判断”那些不对劲的流量,帮助监控系统“洞察虫情”,发现可能的安全威胁、网络故障等状况。以下是极光算法在流量监控中重要性的一些方面——
253 0
|
前端开发
弹性盒中的缩放机制是怎样的?
弹性盒中的缩放机制是怎样的?
|
Java
JUC基础(三)—— Lock锁 及 AQS(2)
JUC基础(三)—— Lock锁 及 AQS
157 0
|
存储 开发框架 缓存
.NET Core 中的 日志与分布式链路追踪
.NET Core 中的 日志与分布式链路追踪
560 1
.NET Core 中的 日志与分布式链路追踪
|
Linux 开发工具
Linux:时间日期指令(date)+查找指令(find,locate,grep)+压缩和解压指令(gzip,gunzip;zip,unzip;tar)(内含详细解释+操作实例)
Linux:时间日期指令(date)+查找指令(find,locate,grep)+压缩和解压指令(gzip,gunzip;zip,unzip;tar)(内含详细解释+操作实例)
387 0
Linux:时间日期指令(date)+查找指令(find,locate,grep)+压缩和解压指令(gzip,gunzip;zip,unzip;tar)(内含详细解释+操作实例)