遠端呼叫 Dubbo 與 Feign 的區別

2021-10-17 15:37:05 字數 694 閱讀 9503

一、相同點

dubbo 與 feign 都依賴註冊中心、負載均衡。

二、區別

1、協議

dubbo:

支援多傳輸協議(dubbo、rmi、http、redis等等),可以根據業務場景選擇最佳的方式。非常靈活。

預設的dubbo協議:利用netty,tcp傳輸,單

一、非同步、長連線,適合資料量小、高併發和服務提供者遠遠少於消費者的場景。

feign:

基於http傳輸協議,短連線,不適合高併發的訪問。

2、負載均衡

dubbo:

支援4種演算法(隨機、輪詢、活躍度、hash一致性),而且演算法裡面引入權重的概念。

配置的形式不僅支援**配置,還支援dubbo控制台靈活動態配置。

負載均衡的演算法可以精準到某個服務介面的某個方法。

feign:

只支援n種策略:輪詢、隨機、responsetime加權。

負載均衡演算法是client級別的。

3、容錯策略

dubbo:

支援多種容錯策略:failover、failfast、brodecast、forking等,也引入了retry次數、timeout等配置引數。

feign:

利用熔斷機制來實現容錯的,處理的方式不一樣。

微服務中遠端呼叫Dubbo與Feign對比

實現遠端呼叫的方式 http介面 web介面 resttemplate okhttp feign rpc呼叫 dubbo socket程式設計 webservice。什麼是feign?feign是spring cloud提供的乙個宣告式的偽http客戶端,它使得呼叫遠端服務就像呼叫本地服務一樣簡單,...

遠端呼叫框架dubbo

alibaba有好幾個分布式框架,主要有 進行遠端呼叫 類似於rmi的這種遠端呼叫 的 dubbo hsf jms訊息服務 napoli notify kv資料庫 tair 等。這個框架 工具 產品在實現的時候,都考慮到了容災,擴充套件,負載均衡,於是出現乙個配置中心 configserver 的東...

FEIGN遠端呼叫丟失請求頭

在學習穀粒 篇幅中,在feign進行遠端呼叫是會丟失cookie等訊息.以及在使用completablefuture進行非同步呼叫時會導致丟失上下文 經過requestinterceptor處理後的請求如下,已經加上了請求頭的cookie資訊 外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上...