gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

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

SpringCloud?Feign超詳細講解

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

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號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
欧美另类videos| 欧美日韩怡红院| 欧美视频国产视频| 在线免费av播放| 无码少妇一区二区三区芒果| 国产极品尤物在线| 国产女大学生av| 日本www在线播放| 农村妇女精品一二区| 免费观看中文字幕| 精品视频无码一区二区三区| 国产黄色片免费在线观看| 黄色一级大片免费| 国产女教师bbwbbwbbw| 白白操在线视频| 农民人伦一区二区三区| 97超碰青青草| 一区二区三区 日韩| 手机av在线网站| 福利视频免费在线观看| 国模吧无码一区二区三区| 国模杨依粉嫩蝴蝶150p| 国产日韩欧美久久| 黄色片免费在线观看视频| 久久久999免费视频| 精品久久久久久中文字幕2017| 青青草原国产在线视频| 日韩a级黄色片| 日韩av片在线看| 国产精品999.| 国产中文字幕二区| 一区二区三区入口| 妞干网在线播放| 亚洲老女人av| 免费一级特黄毛片| 日本美女视频一区| 欧美黑人经典片免费观看 | 日韩中文字幕组| 夜夜爽久久精品91| 37pao成人国产永久免费视频| 亚洲天堂2018av| 人妻夜夜添夜夜无码av| 日韩高清第一页| 欧美 国产 日本| av 日韩 人妻 黑人 综合 无码| 18岁视频在线观看| 久久99久久99精品| 天堂av免费看| 久久99爱视频| 日本爱爱免费视频| 免费黄色福利视频| 九一国产精品视频| 国产又粗又猛又爽又黄的网站| 污污的网站18| 成人性生生活性生交12| 国产二级片在线观看| 国产乱子伦精品视频| 国产又黄又爽免费视频| 亚洲视频一二三四| 男女男精品视频站| 日本三级黄色网址| 五月天av在线播放| 中文字幕在线综合| 欧美日韩中文不卡| 少妇一级淫免费播放| 国产wwwxx| 久久婷婷国产91天堂综合精品| 鲁一鲁一鲁一鲁一澡| 99精品人妻少妇一区二区 | 一级一片免费播放| 91xxx视频| 波多野结衣 作品| 国产亚洲黄色片| 国产av天堂无码一区二区三区| 国产在线视频在线| 色欲色香天天天综合网www| 18禁裸男晨勃露j毛免费观看| 国产欧美日韩小视频| 男女日批视频在线观看| 欧美亚洲一二三区| 杨幂毛片午夜性生毛片 | 日本熟妇人妻xxxx| 国产一区二区网| 国产福利一区视频| 99九九精品视频| 999久久欧美人妻一区二区| 黄网站欧美内射| 一道本视频在线观看| 久久精品亚洲天堂| 国产日韩欧美精品在线观看| 国内外成人免费激情视频| 亚洲欧美久久久久| 国产精品久久久久9999爆乳| 1024精品视频| 国产精品嫩草影院8vv8| 欧美黄色免费网址| 天天操天天爱天天爽| 国产精品88久久久久久妇女| 日本不卡在线观看视频| 97人人爽人人| 欧美深夜福利视频| 日本高清一区二区视频| 成人一区二区免费视频| 亚洲视频在线观看一区二区三区| 国产精品中文久久久久久| 青青草视频在线免费播放| 一级黄色高清视频| 超碰97人人射妻| 毛片av在线播放| 九九热免费在线观看| 欧美 国产 日本| 日本人体一区二区| 91视频福利网| 亚洲人辣妹窥探嘘嘘| 乱妇乱女熟妇熟女网站| 国产一二三四区在线观看| 91制片厂毛片| 久久久久国产精品熟女影院| 欧美激情亚洲天堂| 伊人成人免费视频| 中国黄色片免费看| 久久综合伊人77777麻豆最新章节| 男人天堂a在线| 亚洲小视频在线播放| 手机在线国产视频| 九九热免费在线观看| 久久久久久久片| 国产自偷自偷免费一区| 熟女性饥渴一区二区三区| 日本网站免费在线观看| 国产成人一区二区三区别| 一本色道久久88亚洲精品综合| 制服丝袜中文字幕第一页 | 国产九九九九九| 男人日女人下面视频| 黄色一级视频片| 免费av观看网址| 国产视频在线视频| 国产精品乱码久久久久| 欧美黄色一级片视频| 国产视频一区二区三区在线播放| 亚欧无线一线二线三线区别| 亚洲精品无码久久久久久| 精品99在线视频| 一区二区三区网址| 手机av在线网站| 国产一级片91| 久久久久久久久久久99| 精品中文字幕av| 午夜dv内射一区二区| 免费成人黄色大片| 成人午夜免费在线视频| 久草资源站在线观看| 99热这里只有精品在线播放| 99精品999| 超碰97免费观看| 337p粉嫩大胆噜噜噜鲁| www.com操| 少妇大叫太大太粗太爽了a片小说| 欧美人与动牲交xxxxbbbb| 波多野结衣50连登视频| 中文字幕国产高清| 国产二区视频在线| 一本色道久久亚洲综合精品蜜桃| 超碰免费在线公开| 久激情内射婷内射蜜桃| 天天综合网久久| 欧美精品自拍视频| 亚洲欧美一区二区三区不卡| 国产91在线视频观看| 国产精品探花在线播放| 女性女同性aⅴ免费观女性恋| 狠狠操狠狠干视频| 欧美色图另类小说| av中文字幕av| 中文字幕成人在线视频| 国产l精品国产亚洲区久久| 性欧美18一19内谢| 污视频免费在线观看网站| 国产极品在线视频| 国产爆乳无码一区二区麻豆 | 国产精品88久久久久久妇女 | 日韩精品手机在线观看| 久久99999| 99精品免费在线观看| 蜜臀av无码一区二区三区| 精品一区二区三区毛片| 亚洲小视频网站| www黄色在线| 免费午夜视频在线观看| av免费观看大全| 草b视频在线观看| 欧美 亚洲 视频| 成人短视频在线观看免费| 精品国产乱码久久久久久1区二区| 韩国一区二区av| av片中文字幕| 午夜免费一区二区| 亚洲欧美在线精品| 亚洲va在线va天堂va偷拍|