久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

SpringCloud?Feign超詳細講解

Feign是Netflix公司開發的一個聲明式的REST調用客戶端; Ribbon負載均衡、 Hystrⅸ服務熔斷是我們Spring Cloud中進行微服務開發非常基礎的組件,下面一起來看一下,希望對大家有幫助。

SpringCloud?Feign超詳細講解

程序員必備接口測試調試工具:立即使用
Apipost = Postman + Swagger + Mock + Jmeter
Api設計、調試、文檔、自動化測試工具
后端、前端、測試,同時在線協作,內容實時同步

推薦學習:《java視頻教程》

一、什么是Feign

Feign是聲明式Web Service客戶端,它讓微服務之間的調用變得更簡單,類似controller調用service。SpringCloud集成了Ribbon和Eureka,可以使用Feigin提供負載均衡的http客戶端。Feign是通過接口和注釋來實現負載均衡的。

二、Feign能干什么

(摘抄自狂神說JAVA)

Feign能干什么?

Feign旨在使編寫Java Http客戶端變得更容易

前面在使用Ribbon + RestTemplate時,利用RestTemplate對Http請求的封裝處理,形成了一套模板化的調用方法。但是在實際開發中,由于對服務依賴的調用可能不止一處,往往一個接口會被多處調用,所以通常都會針對每個微服務自行封裝一個客戶端類來包裝這些依賴服務的調用。所以,Feign在此基礎上做了進一步的封裝,由他來幫助我們定義和實現依賴服務接口的定義,在Feign的實現下,我們只需要創建一個接口并使用注解的方式來配置它 (類似以前Dao接口上標注Mapper注解,現在是一個微服務接口上面標注一個Feign注解),即可完成對服務提供方的接口綁定,簡化了使用Spring Cloud Ribbon 時,自動封裝服務調用客戶端的開發量。

Feign默認集成了Ribbon

利用Ribbon維護了MicroServiceCloud-Dept的服務列表信息,并且通過輪詢實現了客戶端的負載均衡,而與Ribbon不同的是,通過Feign只需要定義服務綁定接口且以聲明式的方法,優雅而簡單的實現了服務調用。

三、Feign的使用步驟

1、新建一個module

SpringCloud?Feign超詳細講解

2、配置Pom.xml

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">     <parent>         <artifactId>springcloud-demo2</artifactId>         <groupId>com.you</groupId>         <version>1.0-SNAPSHOT</version>     </parent>     <modelVersion>4.0.0</modelVersion>     <artifactId>springcloud-eureka-7001</artifactId>     <dependencies>         <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-eureka-server -->         <!--Eureka Server-->         <dependency>             <groupId>org.springframework.cloud</groupId>             <artifactId>spring-cloud-starter-eureka-server</artifactId>             <version>1.4.6.RELEASE</version>         </dependency>         <!--熱部署-->         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-devtools</artifactId>         </dependency>     </dependencies> </project>
登錄后復制

3、配置applicatin.yaml

server:
port: 801

eureka:
client:
register-with-eureka: false #不向eureka注冊自己
service-url:
defaultZone: http://localhost:7001/eureka/
ribbon:
eureka:
enabled: true

4、配置configBean

package com.you.config; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.client.RestTemplate; @Configuration public class ConfigBean {     @Bean     @LoadBalanced  //ribbon     /*配置負載均衡實現RestTemplate*/     /*IRule*/     /*RoundRobinRule 輪詢 */     /*RandomRule 隨機*/     /*AvailabilityFilteringRule 優先過濾掉跳閘、訪問故障的服務,對剩下的進行輪詢 */     public RestTemplate getRestTemplate() {         return new RestTemplate();     } }
登錄后復制

登錄后復制

5、配置Controller類

package com.you.config; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.client.RestTemplate; @Configuration public class ConfigBean {     @Bean     @LoadBalanced  //ribbon     /*配置負載均衡實現RestTemplate*/     /*IRule*/     /*RoundRobinRule 輪詢 */     /*RandomRule 隨機*/     /*AvailabilityFilteringRule 優先過濾掉跳閘、訪問故障的服務,對剩下的進行輪詢 */     public RestTemplate getRestTemplate() {         return new RestTemplate();     } }
登錄后復制

登錄后復制

6、配置啟動類

package com.you; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.cloud.netflix.ribbon.RibbonClient; import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.context.annotation.ComponentScan; @SpringBootApplication @EnableEurekaClient @EnableFeignClients(basePackages = {         "com.you"}) public class FeignDeptConsumer_80 {     public static void main(String[] args) {         SpringApplication.run(FeignDeptConsumer_80.class,args);     } }
登錄后復制

7、改動API

1)引入Feign依賴

SpringCloud?Feign超詳細講解

 <dependency>             <groupId>org.springframework.cloud</groupId>             <artifactId>spring-cloud-starter-feign</artifactId>             <version>1.4.6.RELEASE</version>         </dependency>
登錄后復制

2)配置Service

SpringCloud?Feign超詳細講解

package com.you.service; import com.you.pojo.Dept; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @Component @FeignClient(value = "SPRINGCLOUD-PROVIDER-DEPT") public interface DeptClientService {     @GetMapping("/dept/aDept/{id}")     public Dept getDeptOfId(@PathVariable("id") Long id); }
登錄后復制

3)注意

SpringCloud?Feign超詳細講解

服務名字要寫對GetMapper中的內容要和提供者一致,否則報錯(找了一下午)

下面是提供者的內容

SpringCloud?Feign超詳細講解

四、結果

這樣即可獲取到數據,而且負載平衡的默認算法,仍然是輪詢!

SpringCloud?Feign超詳細講解

推薦學習:《java視頻教程》

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
久久一区二区三区喷水| 综合激情五月婷婷| а√天堂8资源中文在线| 欧美久久久网站| 鲁大师成人一区二区三区| 久久精品系列| 天堂日韩电影| 激情偷拍久久| 欧洲亚洲一区二区三区| 久久久国产亚洲精品| 久久国产毛片| 日本一不卡视频| 亚洲精品黄色| 国产欧美精品久久| 亚洲天堂一区二区| 国产伊人精品| 日韩高清一区| 高清日韩欧美| 国产成人精品一区二区三区免费| 久久久男人天堂| 四虎成人av| 日韩精品一级二级| 免费在线亚洲| 九九精品调教| 日韩av一二三| 国产精品久久久久久久久久10秀| 久久国产精品99国产| 欧美亚洲人成在线| 成人污污视频| 蜜臀a∨国产成人精品| 国产精品2区| 亚洲色图网站| 久久久国产亚洲精品| 亚洲影院天堂中文av色| 国产福利91精品一区二区| 亚洲综合电影| 91精品国产自产观看在线| 电影亚洲精品噜噜在线观看| 欧美日韩视频| 中文字幕成在线观看| 日韩国产一二三区| 三级一区在线视频先锋| 日韩伦理福利| 国产精品久久观看| 国产精品亚洲综合久久| 蜜桃视频一区二区| 久久一区二区三区喷水| 日韩在线观看一区| 国产精品久久久久av电视剧| 精品资源在线| 日韩成人午夜精品| 亚洲精选av| 日本亚洲不卡| 天堂成人国产精品一区| 国产欧美日韩精品一区二区免费| 亚洲免费毛片| 久色成人在线| 婷婷成人av| 蜜桃久久久久久久| 日本成人手机在线| 日韩高清二区| 日韩国产欧美三级| 日韩国产高清在线| 国产精品日本一区二区三区在线| 麻豆精品视频在线观看免费| 亚洲精品免费观看| 蜜桃视频在线观看一区二区| 亚洲免费网址| 欧美一级一区| 成人精品高清在线视频| 国产精品羞羞答答在线观看| 国产精品草草| 国产欧美一区二区三区精品酒店| 精品捆绑调教一区二区三区| 亚洲成av人片一区二区密柚 | 91av一区| 久久97视频| 日韩深夜视频| 亚洲精华国产欧美| 欧美不卡视频| 四季av一区二区凹凸精品| 欧美日韩在线网站| 在线国产精品一区| 国产一区二区三区久久| 亚洲二区三区不卡| 国产高清日韩| 激情欧美日韩一区| 久久黄色影视| 自拍日韩欧美| 国产一区2区在线观看| 亚洲最大av| 国产精品99一区二区三| 亚洲精品日韩久久| 日韩一区三区| 日韩在线电影| 免费毛片在线不卡| 日韩av二区| 亚洲网址在线观看| 国产盗摄——sm在线视频| 天使萌一区二区三区免费观看| av中文资源在线资源免费观看| 蜜桃av一区二区三区电影| 精品国产一级| 欧美日韩亚洲一区二区三区在线| 日韩午夜高潮| 97精品中文字幕| 国产毛片一区二区三区| 国产亚洲高清视频| 久久国产视频网| 亚洲大全视频| 日韩中文字幕高清在线观看| 国产日韩视频在线| 偷拍亚洲精品| 青青草视频一区| 三级在线观看一区二区| 欧美日韩国产亚洲一区| 日韩伦理一区| 一本大道色婷婷在线| 粉嫩av一区二区三区四区五区 | 国产欧美激情| 日韩精品a在线观看91| 免费人成精品欧美精品| 亚洲人成高清| 99视频一区| 亚洲天堂av资源在线观看| 香蕉久久夜色精品国产| 99热精品在线| 亚洲综合精品| 91午夜精品| 欧美精品99| 日韩国产欧美一区二区三区| 国产精品探花在线观看| 欧美交a欧美精品喷水| 精品亚洲自拍| 亚洲高清毛片| 在线看片日韩| 国产伊人久久| 精品一区亚洲| 一区二区国产在线观看| 欧美日韩视频免费看| 三上亚洲一区二区| av亚洲在线观看| 日韩福利视频导航| 日本va欧美va欧美va精品| 日韩在线精品| 国产一区导航| 国产精品久久久久久久久久齐齐 | 日韩国产综合| 色老板在线视频一区二区| 国产亚洲毛片| 欧美日韩黄网站| 999国产精品永久免费视频app| 在线精品观看| 欧美sss在线视频| 国产日韩欧美一区| 国内激情久久| 伊人网在线播放| 亚洲精品黄色| 久久精品不卡| 国产极品久久久久久久久波多结野| 婷婷亚洲综合| www.51av欧美视频| 亚洲精品乱码| 国产精品久久久久9999高清| 99国产精品视频免费观看一公开| 狂野欧美性猛交xxxx| 麻豆精品91| 色爱av综合网| 高清av一区| 精品国产欧美| 欧美精品国产白浆久久久久| 影音国产精品| 久久精选视频| 色婷婷色综合| 麻豆中文一区二区| 热久久久久久| 亚洲高清二区| 欧美搞黄网站| 国产一区二区三区天码| 国产精品欧美一区二区三区不卡| 91麻豆精品激情在线观看最新 | 亚洲欧美在线专区| 免费国产自久久久久三四区久久| 精品视频黄色| 免费一级欧美片在线观看网站 | 亚洲精华国产欧美| 日韩av免费大片| 日韩精品中文字幕第1页| 国产精品国产三级国产在线观看| 欧美一区激情| 欧美一区免费| 久久精品国产亚洲aⅴ| 色爱综合网欧美| 福利一区二区| 久久久人人人| 丝袜亚洲另类欧美| 青草国产精品| 91欧美国产| 一区在线视频观看| 免费日韩av片|