本文将讲解若何利用RestTemplate来消费办事,若何连系Ribbon在消费办事时做负载平衡。接下来将周全讲解Feign,包罗若何利用Feign来长途调剂其他办事、FeignClient的各项具体设置装备摆设,并从源码的角度深切讲解Feign。
东西/原料
- Java情况
- idea/eclipse
- maven
方式/步调
- 1
Feign受Retrofit、JAXRS-2.0和WebSocket的影响,采用了声明式API接口气概,将Java http客户端绑心猿意马到它的内部。Feign的首要方针是将Java http客户端的挪用变得简单。
- 2
新建一个Springboot的Moudle工程,取名为eureka-feign-client。起首,在工程的pom文件中插手相关的依靠,包罗担当了本家儿maven工程的pom文件、Feign的起步依靠spring-cloud-starter-feign、Eureka Client的起步依靠spring-cloud-starter-eureka、Web功能的起步依靠spring-boot-starter-web,以及Spring boot测试的起步依靠spring-boot-starter-test,代码如下:
- 3
引入这些依靠之后,在工程的设置装备摆设文件application.yml做相关的设置装备摆设,包罗设置装备摆设法式名为eureka-feign-client,端标语8765,办事注册地址为 http://localhost:8761/eureka/ ,代码如下:
- 4
在法式的启动类EurekaFeignClientApplication加上注解@EnableEurekaClient开启eureka client的功能,经由过程注解@EnableFeignClients开启Feign Client的功能,代码如下:
- 5
经由过程以上3个步调,该法式就具备了Feign的功能,此刻来实现一个简单的Feign Client。新建一个EurekaFeignClient的接口,在接口上加上@FeignClient注解来声明一个Feign Client,此中value为长途挪用其它办事的办事名,FeignConfig.class为Feign Client的设置装备摆设类。在EurekaFeignClient接口内部有一个sayHiFromClientEureka()方式,该方式经由过程Feign来挪用eureka-client办事的“/hi”的API接口,代码如下:
- 6
在FeignConfig类上加上@Configuration注解,表白该类是一个设置装备摆设类,并注入了一个BeanName为feignRetryer的Retryer的Bean。注入该bean后,Feign在长途挪用掉败后会进行重试。代码如下:
- 7
在Service层的HiService类注入EurekaFeignClient的bean,经由过程EurekaFeignClient去挪用sayHiFromClientEureka()方式,代码如下:
- 8
在HiController类上加上@RestController注解,开启RestController的功能,写一个API接口“/hi”,在该接口挪用了HiService的sayHi()方式。HiService经由过程EurekaFeignClient长途挪用eureka-client办事的API接口“/hi”。代码如下:
- 9
启动eureka-server工程,端标语为8761;启动两个eureka-client工程的实例,端标语别离为8762和8763;启动eureka-feign-client工程,端标语为8765,此时工程的架构图如下:
- 10
在浏览器多次拜候 http://localhost:8765/hi ,浏览器为轮流显示以下内容:
hi xiongyan, i am from port: 8762
hi xiongyan, i am from port: 8763
由此可见,Feign Client长途挪用了eureka-client办事(存在端口为8762和8763的两个实例)的“/hi”API接口,Feign Client有负载平衡的能力。
来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!
本文链接:https://www.ibaiwen.com/web/218840.html
- 上一篇: 怎么使用千聊的竞品短书搭建微信知识付费店铺
- 下一篇: 使用PHPExcel导出excel格式文件
- 热门文章
-
WB蒙特利尔(WB Montreal)——欧美十大最差视频游戏开发商
迅猛龙(Velociraptor)——欧美史前十大死亡动物
什么是果酱猫(What Marmalade Cats)?
神奇蜘蛛侠2(The Amazing Spider-Man 2)——欧美最佳蜘蛛侠电影
希瑟(Heather)——欧美十大最佳柯南灰歌
二人梭哈
奥兹奥斯本(Ozzy Osbourne)——欧美十大高估歌手
faceu激萌怎么把瘦脸开到最大
什么是小脑前下动脉(Anterior Inferior Cerebellar Artery)?
我应该知道康涅狄格州的什么(What Should I Know About Connecticut)?
- 热评文章
- 最新评论
-
- 最近访客
-
- 站点信息
-
- 文章总数:200248
- 页面总数:9
- 分类总数:1
- 标签总数:0
- 评论总数:0
- 浏览总数:497