iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >Spring Cloud如何实现服务消费者Feign
  • 251
分享到

Spring Cloud如何实现服务消费者Feign

2023-06-19 11:06:24 251人浏览 安东尼
摘要

小编给大家分享一下spring cloud如何实现服务消费者Feign,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、Feign简介Feign是一个声明式的伪H

小编给大家分享一下spring cloud如何实现服务消费者Feign,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一、Feign简介

Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。

简而言之:

  • Feign 采用的是基于接口的注解

  • Feign 整合了ribbon

二、准备工作

继续用上一节的工程, 启动eureka-server,端口为8761; 启动service-hi 两次,端口分别为8762 、8773.

三、创建一个feign的服务

新建一个spring-boot工程,取名为serice-feign,在它的pom文件引入Feign的起步依赖spring-cloud-starter-feign、Eureka的起步依赖spring-cloud-starter-eureka、WEB的起步依赖spring-boot-starter-web,代码如下:

<dependency> <groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-feign</artifactId>
</dependency>

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>

在工程的配置文件application.yml文件,指定程序名为service-feign,端口号为8765,服务注册地址为http://localhost:8761/eureka/ ,代码如下:

eureka:  client:    serviceUrl:      defaultZone: http://localhost:8761/eureka/server:  port: 8765spring:  application:    name: service-feign

在程序的启动类ServiceFeignApplication ,加上@EnableFeignClients注解开启Feign的功能:

@SpringBootApplication@EnableDiscoveryClient@EnableFeignClientspublic class ServiceFeignApplication {public static void main(String[] args) {SpringApplication.run(ServiceFeignApplication.class, args);}}

定义一个feign接口,通过@ FeignClient(“服务名”),来指定调用哪个服务。比如在代码中调用了service-hi服务的“/hi”接口,代码如下:

@FeignClient(value = "service-hi")public interface SchedualServiceHi {    @RequestMapping(value = "/hi",method = RequestMethod.GET)    String sayHiFromClientOne(@RequestParam(value = "name") String name);}

在Web层的controller层,对外暴露一个”/hi”的api接口,通过上面定义的Feign客户端SchedualServiceHi 来消费服务。代码如下:

@RestControllerpublic class HiController {    @Autowired    SchedualServiceHi schedualServiceHi;    @RequestMapping(value = "/hi",method = RequestMethod.GET)    public String sayHi(@RequestParam String name){        return schedualServiceHi.sayHiFromClientOne(name);    }}

启动程序,多次访问http://localhost:8765/hi?name=forezp,浏览器交替显示:

hi forezp,i am from port:8762

hi forezp,i am from port:8763

以上是“Spring Cloud如何实现服务消费者Feign”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: Spring Cloud如何实现服务消费者Feign

本文链接: https://www.lsjlt.com/news/295995.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Spring Cloud如何实现服务消费者Feign
    小编给大家分享一下Spring Cloud如何实现服务消费者Feign,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、Feign简介Feign是一个声明式的伪H...
    99+
    2023-06-19
  • Spring Cloud中如果实现服务消费者RestTemplate+Ribbon
    小编给大家分享一下Spring Cloud中如果实现服务消费者RestTemplate+Ribbon,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在上一篇文章,讲...
    99+
    2023-06-19
  • Spring Cloud中如何使用Feign 实现负载均衡
    Spring Cloud中如何使用Feign 实现负载均衡,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。下面来介绍一下使用 Feign 负载均衡。在介绍之前,我们先来对 Fei...
    99+
    2023-06-04
  • 如何通过Feign去消费服务
    这篇文章主要介绍“如何通过Feign去消费服务”,在日常操作中,相信很多人在如何通过Feign去消费服务问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何通过Feign去消费服务”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-05
  • springboot+rabbitmq如何实现指定消费者才能消费
    这篇文章将为大家详细讲解有关springboot+rabbitmq如何实现指定消费者才能消费,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。如何保证mq队列里的消息只被测试服务器上的consumer消费,避...
    99+
    2023-06-25
  • java中BlockingQueue如何实现生产者消费者
    这篇文章主要为大家展示了“java中BlockingQueue如何实现生产者消费者”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“java中BlockingQueue如何实现生产者消费者”这篇文章...
    99+
    2023-05-30
    java blockingqueue
  • Spring Cloud中如何实现服务注册consul
    这篇文章给大家分享的是有关Spring Cloud中如何实现服务注册consul的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、consul 简介consul 具有以下性质:服务发现:consul通过http ...
    99+
    2023-06-19
  • 【Spring Cloud Alibaba】(二)微服务调用组件Feign原理+实战
    系列目录 【Spring Cloud Alibaba】(一)微服务介绍 及 Nacos注册中心实战 本文目录 系列目录前言什么是RPC?Feign和OpenFeign都是什么?HTTP调用...
    99+
    2023-10-18
    微服务 spring cloud java spring 云原生
  • spring kafka怎么实现消费者动态订阅新增的topic
    这篇文章主要介绍了spring kafka怎么实现消费者动态订阅新增的topic的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇spring kafka怎么实现消费者动态订阅新增的topic文章都会有所收获,下面...
    99+
    2023-07-04
  • Go语言如何实现一个简单生产者消费者模型
    这篇文章给大家分享的是有关Go语言如何实现一个简单生产者消费者模型的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、生产者消费者模型生产者消费者模型:某个模块(函数等〉负责产生数据,这些数据由另一个模块来负责处理...
    99+
    2023-06-22
  • 如何在spring中使用kafka对消费者进行监听
    这期内容当中小编将会给大家带来有关如何在spring中使用kafka对消费者进行监听,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。整合过程 引入spring-kafka的依赖包 <depe...
    99+
    2023-06-06
  • maven如何实现kafka消息消费
    要使用 Maven 实现 Kafka 消息消费,需要按照以下步骤进行操作:1. 在 Maven 项目的 `pom.xml` 文件中添...
    99+
    2023-09-14
    maven kafka
  • KafkaConsumerGroup如何实现消费者组协调和负载均衡
    KafkaConsumerGroup是Kafka消费者组的概念,在Kafka中,消费者可以组成消费者组,每个消费者组可以订阅一个或多...
    99+
    2024-04-02
  • JAVA项目中的生产者消费者如何利用多线程实现
    今天就跟大家聊聊有关JAVA项目中的生产者消费者如何利用多线程实现,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。JAVA多线程实现生产者消费者的实例详解Product.Javapac...
    99+
    2023-05-31
    java 多线程 ava
  • Spring Cloud如何实现断路器监控
    这篇文章主要为大家展示了“Spring Cloud如何实现断路器监控”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Spring Cloud如何实现断路器监控”这篇文章吧。一、Hystrix Da...
    99+
    2023-06-19
  • Spring Cloud如何实现高可用的服务注册中心
    这篇文章主要介绍了Spring Cloud如何实现高可用的服务注册中心,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、准备工作Eureka can be made even...
    99+
    2023-06-19
  • Spring Cloud Alibaba如何实现服务的无损下线功能
    今天小编给大家分享一下Spring Cloud Alibaba如何实现服务的无损下线功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收...
    99+
    2023-07-05
  • Spring Cloud如何实现链路追踪Sleuth
    这篇文章给大家分享的是有关Spring Cloud如何实现链路追踪Sleuth的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、简介Add sleuth to the classpath of a Spring ...
    99+
    2023-06-19
  • 如何使用spring boot整合kafka和延迟启动消费者
    这篇文章给大家分享的是有关如何使用spring boot整合kafka和延迟启动消费者的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。spring boot 整合kafka,延迟启动消费者spring boot整合...
    99+
    2023-06-20
  • Spring cloud如何实现FeignClient指定Zone调用
    目录背景介绍对应配置(假设调用的服务名字是service-provider)分析这里放上源码ZoneAwareLoadBalancer的选择Server源码实现配置类需要修改的配置S...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作