最近想使用下Feign,然后简单了解了一下,简单的搭了个demo。

  首先简单介绍一下Feign,它是一个Http请求客户端,类似HttpClient,具体里面实现还没去看,知道它是一个请求客户端就行,spirng 把这个客户端封装了一下,搞成了注解。

然后这个东西怎么使用呢,首先了解一下大致的构造。

整体模型:要用Feign,必须要以下3个东西

项目A(客户端)、服务中心 (Eureka注册中心)、项目B(服务端),然后把下面三个东西凑齐就可以跑示例了

1.Eureka 注册服务中心:Feign 必须需要 Eureka 注册中心 的支持,就是说,你必须先搭建一个Eureka 注册中心。

  去搭建吧:http://www.ityouknow.com/springcloud/2017/05/10/springcloud-eureka.html

如果maven依赖不对,看下这里:https://blog.csdn.net/hh652400660/article/details/79474419

2.服务端:Feign 是客户端,那么必须需要一个服务端才行,所以还得自己建一个服务端,然后这个服务端需要注册到Eureka 注册中心。

  spring 官网的demo示例,githup地址:https://github.com/spring-cloud-samples/feign-eureka

代码里2个东西

,把应用注册到 Eureka 注册中心

 +  开启一个服务接口

服务端配置文件

3. Feign 客户端,也是spring 官方示例 ~~~

客户端代码里3个东西

,把客户端应用注册到 Eureka 注册中心

 +  开启一个服务接口

这个就是 文章 主要的东西,通过这个注解 +  配置文件里 服务端的名字(即服务端注册到Eureka 注册中心 的名字),就能远程调用 服务端的接口了

配置文件我也贴下吧,示例里有

好了,就这3个东西,弄好了,就可以开始运行了

1.启动 Eureka 注册中心 的服务,启动后可以访问,http://localhost:8000/,地址和端口自行调整,我按照上面的设置的 8000端口。

页面这个样子的:

2.启动服务端server,访问接口看看:http://localhost:8111/

访问正常

3.启动Feign 客户端看看,访问地址:http://localhost:8211/,还是8111端口的返回结果

如图:

自己可以关掉其中某个服务试试,再去访问看看效果~~

结束:

整体模型就是下图这个样子,每个项目都可以注册到服务中心的,服务中心也可以是高可用的,今天先到这里,有机会再去试试里面的细节功能,

现在 Eureka 好像闭源了,感觉还没怎么成熟,后面有什么更新再看看去了

Spring Cloud Feign初接触的更多相关文章

  1. 笔记:Spring Cloud Feign Ribbon 配置

    由于 Spring Cloud Feign 的客户端负载均衡是通过 Spring Cloud Ribbon 实现的,所以我们可以直接通过配置 Ribbon 的客户端的方式来自定义各个服务客户端调用的参 ...

  2. 笔记:Spring Cloud Feign Hystrix 配置

    在 Spring Cloud Feign 中,除了引入了用户客户端负载均衡的 Spring Cloud Ribbon 之外,还引入了服务保护与容错的工具 Hystrix,默认情况下,Spring Cl ...

  3. 笔记:Spring Cloud Feign 其他配置

    请求压缩 Spring Cloud Feign 支持对请求与响应进行GZIP压缩,以减少通信过程中的性能损耗,我们只需要通过下面二个参数设置,就能开启请求与响应的压缩功能,yml配置格式如下: fei ...

  4. 笔记:Spring Cloud Feign 声明式服务调用

    在实际开发中,对于服务依赖的调用可能不止一处,往往一个接口会被多处调用,所以我们通常会针对各个微服务自行封装一些客户端类来包装这些依赖服务的调用,Spring Cloud Feign 在此基础上做了进 ...

  5. 第六章:声明式服务调用:Spring Cloud Feign

    Spring Cloud Feign 是基于 Netflix Feign 实现的,整合了 Spring Cloud Ribbon 和 Spring Cloud Hystrix,除了提供这两者的强大功能 ...

  6. Spring Cloud Feign Ribbon 配置

    由于 Spring Cloud Feign 的客户端负载均衡是通过 Spring Cloud Ribbon 实现的,所以我们可以直接通过配置 Ribbon 的客户端的方式来自定义各个服务客户端调用的参 ...

  7. Spring Cloud feign

    Spring Cloud feign使用 前言 环境准备 应用模块 应用程序 应用启动 feign特性 综上 1. 前言 我们在前一篇文章中讲了一些我使用过的一些http的框架 服务间通信之Http框 ...

  8. 微服务架构之spring cloud feign

    在spring cloud ribbon中我们用RestTemplate实现了服务调用,可以看到我们还是需要配置服务名称,调用的方法 等等,其实spring cloud提供了更优雅的服务调用方式,就是 ...

  9. Spring Cloud Feign 在调用接口类上,配置熔断 fallback后,输出异常

    Spring Cloud Feign 在调用接口类上,配置熔断 fallback后,出现请求异常时,会进入熔断处理,但是不会抛出异常信息. 经过以下配置,可以抛出异常: 将原有ErrorEncoder ...

随机推荐

  1. linux双网卡绑定为逻辑网卡

    网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术. 生产环境服务器为:DELL 网卡为:光纤 bond需要修改涉及的网卡配置文件 /e ...

  2. python爬虫入门新手向实战 - 爬取猫眼电影Top100排行榜

    本次主要爬取Top100电影榜单的电影名.主演和上映时间, 同时保存为excel表个形式, 其他相似榜单也都可以依葫芦画瓢 首先打开要爬取的网址https://maoyan.com/board/4, ...

  3. 性能测试:Jmeter-Beanshell请求加密实例

    进行性能测试时,有可能遇到一种场景:接口请求由于安全问题,需要进行加密发送. 这种场景下,使用Jmeter实现性能测试,则也需要使用同样的加密规则发送请求报文. 要实现此类性能测试有几种策略: 直接去 ...

  4. DeleteFolder

    import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; /*** * @author ...

  5. springboot 集成swagger2

    使用Swagger 可以动态生成Api接口文档,在项目开发过程中可以帮助前端开发同事减少和后端同事的沟通成本,而是直接参照生成的API接口文档进行开发,提高了开发效率.这里以springboot(版本 ...

  6. 快学Scala 第十一课 (类继承)

    类继承: class People { } class Emp extends People{ } 和Java一样,final的类不能被继承.final的字段和方法不能被override. 在Scal ...

  7. 对接第三方服务引起的小思考-回调和Sign算法

    背景 ​ 最近在对接一个同事写的支付公用模块,然后对第三方服务引起一两个小思考. 思考 回调 来看看我们同事是如何做回调的. 首先,请求支付接口的时候,将回调URL作为请求body的一个参数[不加密] ...

  8. golang grpc 详解

    https://segmentfault.com/a/1190000007880647

  9. 使用lombok中的log

    idea中安装lombok插件 引入lombok依赖 <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> ...

  10. 关于javascript中的prototype

    作为一个致力于前端开发的人员,能够熟练掌握javascript的原理和机制是每个小白的必经之路,这也是最痛苦的.有人说前端功力好不好最主要的就是看对js的掌握能力,有人说十年也啃不完一门javascr ...