今天就跟大家聊聊有關(guān)SpringBoot中怎么使用feign實現(xiàn)遠程接口調(diào)用和錯誤熔斷,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
目前創(chuàng)新互聯(lián)已為上千多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、平遠網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
1.第一步,新建兩個簡單的springboot項目并創(chuàng)建rest接口
demo系統(tǒng)的rest接口
plus系統(tǒng)的調(diào)用接口
2.在項目pom文件里導(dǎo)入feign和hystrix的pom依賴包
<properties> <java.version>1.8</java.version> <spring-cloud.version>Greenwich.SR1</spring-cloud.version> </properties><!-- 支持使用feign客戶端 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> <!-- 支持使用hystrix斷路器 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix</artifactId> </dependency><dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
3.創(chuàng)建遠程調(diào)用client及熔斷回調(diào)類
package com.mybatis.plus.web.client;import org.springframework.cloud.openfeign.FeignClient;import org.springframework.web.bind.annotation.RequestMapping;@FeignClient(name="demo",url="${conf.address.demo}",fallbackFactory=DemoFeignClientFB.class)public interface DemoFeignClient { @RequestMapping("cmpOclOrder/demoFeign") public String testFeign();}
package com.mybatis.plus.web.client;import feign.hystrix.FallbackFactory;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.springframework.stereotype.Component;@Componentpublic class DemoFeignClientFB implements FallbackFactory<DemoFeignClient> { private static Log logger = LogFactory.getLog(DemoFeignClientFB.class); @Override public DemoFeignClient create(Throwable throwable) { return new DemoFeignClient() { @Override public String testFeign() { return "demo系統(tǒng)接口調(diào)用失敗"; } }; }}
這里的url在配置文件里面有定義(就是需要調(diào)用系統(tǒng)的IP及端口)
如果要支持熔斷(如果調(diào)用遠程接口報錯,遠程接口就返回一個固定的值)需要在配置文件里啟用hystrix
4.在啟動類上加上支持feign的注解就ok了(這里basePackages值是定義client類的包路徑)
5.測試效果展示
調(diào)用plus系統(tǒng)的plusTest接口
demo系統(tǒng)接口時報錯(修改代碼-重啟)
返回固定的值
看完上述內(nèi)容,你們對SpringBoot中怎么使用feign實現(xiàn)遠程接口調(diào)用和錯誤熔斷有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
名稱欄目:SpringBoot中怎么使用feign實現(xiàn)遠程接口調(diào)用和錯誤熔斷
瀏覽路徑:http://aaarwkj.com/article40/ihpheo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、品牌網(wǎng)站設(shè)計、響應(yīng)式網(wǎng)站、網(wǎng)站排名、企業(yè)建站、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)