日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

dubbo优势_Dubbo与SpringCloud核心组件Ribbon、Hystrix、Feign的优劣势比较

發(fā)布時(shí)間:2023/12/2 javascript 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 dubbo优势_Dubbo与SpringCloud核心组件Ribbon、Hystrix、Feign的优劣势比较 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在微服務(wù)架構(gòu)中,分布式通信、分布式事務(wù)、分布式鎖等問(wèn)題是亟待解決的幾個(gè)重要問(wèn)題。

Spring Cloud是一套完整的微服務(wù)解決方案,基于 Spring Boot 框架。確切的說(shuō),Spring Cloud是一個(gè)大容器(而不是一個(gè)框架),它可以將通過(guò)集成一些好的微服務(wù)框架,從而簡(jiǎn)化開發(fā)者的代碼量。

Dubbo 是阿里開源的分布式通信框架,專注于通信服務(wù)治理,類似于Spring Cloud中 Ribbon、 Hystrix、 Feign等核心組件的功能。

下面,我們著重來(lái)聊下這兩種處理方式有何不同。

01 協(xié)議處理

1)Spring Cloud更加優(yōu)雅簡(jiǎn)單

Feign使用Http進(jìn)行傳輸。

Feign 集成了Ribbon,并且嵌入了Spring cloud全家桶 ,通過(guò)簡(jiǎn)單配置 ,就能在分布式里面實(shí)現(xiàn)服務(wù)間的調(diào)用,類似于Bean 調(diào)用。

2)Dubbo方式更靈活

Dubbo協(xié)議可選,大部分情況使用Dubbo傳輸協(xié)議,也可以使用http協(xié)議。

從協(xié)議層選擇看,Dubbo是配置化的,更加靈活。

Dubbo 協(xié)議更適合小數(shù)據(jù)高并發(fā)場(chǎng)景。

02 性能方面

1)Spring Cloud性能調(diào)優(yōu)

Feign 在高并發(fā)場(chǎng)景下,通常需要進(jìn)行如下性能優(yōu)化,有明顯瓶頸,需要改造。

· 調(diào)整服務(wù)容器到 UnderTow ,在負(fù)載大的情況下Undertow 的性能有提高;

· 曾有同學(xué)表示將HTTPURLConnection 改成 Httpclient /Okhttp,這樣可以優(yōu)化性能,其實(shí)單次調(diào)用性能Httpclient差很多,HttpClient 因?yàn)榉庋b了很多方便開發(fā)者處理的方法,性能比HTTPURLConnection差,改進(jìn)同時(shí)Httpclient 需要設(shè)置復(fù)用連接池,效果可見一般;

· 開啟Gzip;

· Feign中HttpMessageConverters 默認(rèn)使用jackson2方式進(jìn)行序列化和反序列化,可以將其改造為ProtoBuf,降低Cpu 損耗并且響應(yīng)時(shí)間也降低。

2)Dubbo性能調(diào)優(yōu)

主要是配置而無(wú)需改造。

03 負(fù)載均衡

1)Ribbon 的負(fù)載均衡策略

· 隨機(jī);

· 規(guī)則輪詢;

· 空閑策略;

· 響應(yīng)時(shí)間策略。

Feign默認(rèn)使用Ribbon作為負(fù)載均衡的組件,Ribbon需要進(jìn)行全局配置,個(gè)性化配置比較麻煩。

2)Dubbo 的負(fù)載均衡策略

· 隨機(jī);

· 權(quán)重輪詢;

· 最少活躍調(diào)用數(shù);

· 一致性Hash策略。

Dubbo 可以使用路由策略,然后再進(jìn)行負(fù)載均衡。

04 容錯(cuò)機(jī)制

Spring cloud 的 Hystix 提供了服務(wù)降級(jí),服務(wù)熔斷,依賴隔離,監(jiān)控(Hystrix Dashboard)等功能。

圖片為引用,來(lái)源于官方圖片

Dubbo 提供了一整套 FailOver、FailFast、Failsafe、FailBack、Aviailable、Broadcast、Forking 策略,以及Mock

圖片為引用,來(lái)源于官方圖片

05 路由、流量調(diào)度、ABtest

1)Ribbon需自己實(shí)現(xiàn),應(yīng)用不靈活

Ribbon主要通過(guò)擴(kuò)展 AbstractLoadBalancerRule負(fù)載均衡的方法來(lái)實(shí)現(xiàn),在負(fù)載均衡的部分還要進(jìn)行改造升級(jí)。

2)Dubbo更加靈活方便

Dubbo通過(guò)界面化、校本化配置路由規(guī)則,可以實(shí)現(xiàn)灰度發(fā)布、動(dòng)態(tài)流量調(diào)度、容量計(jì)算等,方案成熟。

另外,Dubbo 還支持多版本調(diào)用。

06 總結(jié)

正如Dubbo的介紹(如下圖),業(yè)務(wù)發(fā)展影響著架構(gòu)的選型,當(dāng)服務(wù)數(shù)量不是很大時(shí),使用普通的分布式RPC架構(gòu)即可,當(dāng)服務(wù)數(shù)量增長(zhǎng)到一定數(shù)據(jù),需要進(jìn)行服務(wù)治理時(shí),就需要考慮使用流式計(jì)算架構(gòu)。

圖片為引用,來(lái)源于官方圖片

Dubbo可以方便的做更精細(xì)化的流量調(diào)度,服務(wù)結(jié)構(gòu)治理的方案成熟,適合生產(chǎn)上使用,雖然Dubbo是塵封后重新開啟,但這并不影響其技術(shù)價(jià)值。

Ribbon Hystrix Feign在服務(wù)治理中,配合Spring Cloud做微服務(wù),使用上有很多優(yōu)勢(shì),社區(qū)也比較活躍,看將來(lái)更新發(fā)展。

如果覺(jué)得不錯(cuò),請(qǐng)點(diǎn)贊支持下,謝謝

超500+架構(gòu)技術(shù)專題集合,回復(fù)【架構(gòu)】,即可獲得。

總結(jié)

以上是生活随笔為你收集整理的dubbo优势_Dubbo与SpringCloud核心组件Ribbon、Hystrix、Feign的优劣势比较的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。