feign是乙個宣告式的web服務客戶端,讓編寫web服務客戶端變得非常容易,只需建立乙個介面並在介面上新增註解即可.
簡單的理解,fegin就是乙個介面繫結器,介面+乙個相關的註解,就可以進行呼叫
fegin和openfegin的區別
引入依賴後,檢視jar包可以發現,在fegin下面自動引入了ribbon負載均衡
server
:port:80
eureka
:client
:register-with-eureka
:false
#不註冊進eureka
service-url
:defaultzone
:
寫乙個業務邏輯介面+@feginclient配置呼叫服務提供者的服務
@component
@feignclient
(value =
"cloud-payment-service"
)//服務提供者註冊咋在eureka上的服務名
public
inte***ce
paymentfeginservice")
public commonresult
getpaymetbyid
(@pathvariable
("id"
) long id)
;}
@restcontroller
@slf4j
public
class
orderfegincontroller")
public commonresult
getpaymentbyid
(@pathvariable
("id"
)long id)
}
訪問:localhost:80/consumer/payment/get/31
自帶負載均衡
fegin的預設等待時間為1秒鐘,有些情況下服務提供方在處理複雜邏輯時可能需要稍微長的時間,這種情況下就會報錯了.所以需要設定fegin客戶端的超時控制。需要在yml檔案中開啟配置。超時設定有ribbon控制。
ribbon
:#指的是建立連線所用的時間,適用於網路狀況正常的情況下,兩端連線所用的時間
readtimeout
:5000
#指的是建立連線後從伺服器讀取到可用資源所用的時間
connectimeout
:5000
feign提供了日誌列印功能,我們可以通過配置來調整日誌級別,從而了解feign中http請求的細節.
說白了就是對feign介面的呼叫情況進行監控和輸出.
1️⃣.在消費端建乙個feign的配置類
@configuration
public
class
feignconfig
}
2️⃣.在yml檔案裡需要開啟日誌的feign客戶端
logging
:level
:# fegin日誌以什麼級別監控哪個介面
com.atguigu.springcloud.service.paymentfeginservice
: debug
OpenFeign服務呼叫
依賴 org.springframework.cloud groupid spring cloud starter openfeign openfeign 使用步驟 微服務呼叫介面 註解 feignclient 1 主啟動類新增 enablefeignclients註解 2.業務邏輯介面 feign...
服務呼叫 open feign
1 pom引用 org.springframework.cloud spring cloud starter openfeign 2 啟動類 標註 enablefeignclients basepackages 你的feign介面存放包 開啟服務呼叫 enablefeignclients basep...
三 服務呼叫 OpenFeign
restcontroller provider public class providercontroller org.springframework.cloudgroupid spring cloud starter openfeignartifactid dependency 這裡其實是為該介面...