最近想使用下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. Spring Cloud 全链路追踪实现

    简介 在微服务架构下存在多个服务之间的相互调用,当某个请求变慢或不可用时,我们如何快速定位服务故障点呢?链路追踪的实现就是为了解决这一问题,本文采用Sleuth+Zipkin+RabbitMQ+ES+ ...

  2. pikachu-数字型注入(post)#手工注入

    1, 因为是post型,所以需要抓取数据包 2, 测试结果为数字型注入 提交恒等的语句可以查询到所有的数据信息 3, 使用UNION联合查询法 判断字段数,测试为2个字段时没有报错,所以可以判断字段数 ...

  3. gitblit在windows10上的安装及服务启动报错处理

    折腾一下午算是装好了,心情不错决定分享一下.安装步骤大同小异网上都有,主要是Failed creating java 这个报错,百度出来的没有一个能给我解决的,摸索半天找出一个自己的方式.为报错而来的 ...

  4. [PHP] php, apache, VS Code安装与配置

    1. 下载

  5. ELK 学习笔记之 elasticsearch启动时Warning解决办法

    elasticsearch启动时Warning解决办法: 转载:http://www.dajiangtai.com/community/18136.do?origin=csdn-geek&dt ...

  6. java第4天:String static Arrays类,Math类

    1 字符串的概述和特点 字符串一旦创建,是不可变的. 有双引号的就是字符串 *** 2 字符串的三种构造方法 2-1 第一种: 格式:String str = new String();| :-| 2 ...

  7. 小程序webview跳转页面后没有返回按钮完美解决方案

    随着小程序越来越火爆,使一个产品如果只有公众号H5页面和APP显得不怎么完美,总感觉不搭上小程序这趟流量车,就会少了点什么,心里别扭地很.在此驱动下,我所在公司也决定赶紧上车. 但是,如果要按照小程序 ...

  8. opencv之膨胀与腐蚀

    腐蚀和膨胀 Erosion/Dilation erosion/dilation,用白话说,就是让图像亮的区域收缩和扩张. 原理 我们定义一个卷积核矩阵.这个矩阵可以是任何形状的,但通常而言,是矩形或者 ...

  9. angular4 httpclient拦截器

    1.创建服务: InterceptorService.ts import { Injectable } from '@angular/core'; import { HttpEvent,HttpInt ...

  10. Redis 复制过程详解

    Redis 的复制功能分为同步( sync )和命令传播( command propagate )两个步骤: 同步用于将从服务器的数据库状态更新至主服务器当前所处的数据库状态. 命令传播则用于在主服务 ...