用feign重構之前的**
之前的**:
/**
* 1.**不可讀
* 2、複雜的url難以維護
* 3.難以響應需求的變化,變化很沒有幸福感
* 4、程式設計體驗不統一
);
改造**:
org.springframework.cloud
spring-cloud-starter-openfeign
在啟動類上加上@enablefeignclients註解
自定義的feign配置類**(如果該類上有@configuration,則需要把該類放到啟動類所在的包之外
,參考ribbon的細粒度配置時的額spring父子上下文問題):
package com.itmuch.contentcenter.configuration;
import feign.logger;
import org.springframework.context.annotation.bean;
public class usercenterfeignconfiguration
}
* 在配置檔案中新增配置
logging:
level:
#springboot設定日誌級別
com.itmuch: debug
# feign的日誌級別是建立在feign的介面的日誌級別是debug的基礎上,如果為其他級別,則什麼都不會列印
com.itmuch.contentcenter.configuration.usercenterfeignconfiguration: debug
# 配置屬性方式自定義feign的日誌級別
feign:
client:
config:
# 想要呼叫的服務的名稱
user-center:
loggerlevel: full
配置屬性方式
# 配置屬性方式指定全域性feign的日誌級別
feign:
client:
config:
# 全域性設定為default
優先順序:全域性**配置《全域性屬性配置《細粒度**配置《細粒度屬性配置
* 寫配置
feign
# 配置feign連線池,使用apache連線池的時候是httpclient,使用okhttp時是okhttp
# 讓feign使用apache httpclient做請求;而不是預設的urlconnection
enabled: true
# feign 的最大連線數
max-connections: 200
# feign單個路徑的最大連線數
max-connections-per-route: 50
Feign宣告式客戶端介面
feign是netflix開發的宣告式 模板化的http客戶端,feign可以幫助我們更快捷 優雅地呼叫http api。在spring cloud中,使用feign非常簡單 建立乙個介面,並在介面上新增一些註解,就完成了。feign支援多種註解,例如feign自帶的註解或者jax rs註解等。sp...
Feign客戶端的日誌
一 介紹 很多場景下,需要了解feign處理請求的具體要求,處理feign遠端呼叫介面的日誌列印,那麼如何滿足這種需求呢?feign對日誌的處理非常靈活,可為每個feign客戶端指定日誌記錄策略,每個feign客戶端都會建立乙個logger。預設情況下,logger的名稱是feigh介面的完整類名。...
客戶端負載均衡Feign之四 Feign配置
設定連線超時時間 ribbon.connecttimeout 500 設定讀取超時時間 ribbon.readtimeout 5000 對所有操作請求都進行重試 ribbon.oktoretryonalloperations true 切換例項的重試次數 ribbon.maxautoretriesn...