自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Netflix Eureka 2.0.0正式發(fā)布:借尸還魂還是虛晃一槍?

開發(fā) 前端
本次大版本號升級,雖然不是虛晃一槍但也僅屬小打小鬧。對你之前學(xué)習(xí)過的Eureka知識、源碼并不構(gòu)成沖擊,基本沒什么變動,也算一件好事。

本文之所以聊一聊Eureka,是因為它還是有一定話題度的。換句話講,在Spring Cloud的加持下,Eureka作為注冊中心的市場占有率蠻高的,大概率還是第一名(非官方數(shù)據(jù),筆者個人直覺而已)。

真的or假的?

這,雖然有點難以置信,但,一圖勝千言:

圖片

圖片

結(jié)論:真的,毋庸置疑?。。?/p>

誰在提交代碼?

繼續(xù)看圖:

圖片

一直提交代碼的竟是Spring Cloud的作者,并非奈飛的工程師?

其實不然,Spencer Gibb確實有過不少的commit,但他絕非唯一。但他的源動力是很足的,作為Spring Cloud項目的負責(zé)人之一,也得負責(zé)將Release Train上的組件整合進來嘛。說到底,還是誰最痛,誰去推!

PS:代碼肯定不會是他一個人來寫(commit也有不少奈飛的工程師),但主要推手之一一定有他

為什么還在維護Eureka?

既然Netflix官方都不愿去繼續(xù)發(fā)展Eureka了,為何還在持續(xù)迭代升級呢?

這其中非常重要的一個原因是:Eureka作為配置中心組件,足夠優(yōu)秀?。。?/p>

整體設(shè)計、表現(xiàn)、性能、代碼水平...都屬非常優(yōu)秀級別

無明顯短板:性能可能算一個,但只要不是超大規(guī)模集群就不成問題

這里祭出各個注冊中心對比圖,感受下Eureka的“強悍”:

圖片

乍一看Nacos貌似完勝?但“國產(chǎn)軟件”想要走向世界,還有一段路要走。這不體現(xiàn)在它是否實現(xiàn)的功能,而體現(xiàn)在實現(xiàn)的非功能(如文檔、宣傳、設(shè)計、代碼水平等)。

這次更新的目的是啥

結(jié)合Spring Framework、Spring Boot、Spirng Cloud的發(fā)布節(jié)點,以及上面截圖中 Spring Cloud作者一直提交代碼的跡象來看,本次升級的目的就顯而易見了:繼續(xù)擁抱Spring Cloud。這不,最新的Spring Cloud 2022已經(jīng)“擁抱”它了:

圖片

本次升級的目的,Release Note上也做了說明:這個2.0.0版本是一項新的工作,和2.x-archive分支是完完全全的兩碼事,從代碼分支里也能看出來:

圖片

本次升級,Eureka Server的Http API接口和數(shù)據(jù)結(jié)構(gòu)沒有任何改變。言外之意:協(xié)議層面,100%向下兼容,兼容1.x的Client客戶端。所以本次升級的目的主要是:Spring Framework 6.0和Spring Boot 3.0兼容,并且擁抱Jakarta EE 9。

what’s new(新特性)

既然升級已成事實,并非虛晃一槍。那就看看新版本帶來了哪些新特性唄。

雖然是大版本號的升級,但在功能上并不會有多少改變,簡要看一看。

最低版本要求

JDK 8(跑測試的話要求JDK 11及以上,因為測試依賴基于Jakarta EE 9的Jetty)

解釋:原生Eureka Client&Server的代碼,使用JDK 8可以正常構(gòu)建、使用

Spring Boot 3.0.0

Spring Cloud 2022.0.0

原生Eureka估計沒人會直接使用,一般都會結(jié)合Spring Cloud一起,這也是“官方推薦”。

其它改變

眾所周知,Eureka是CS模式,分為Client端和Server端。上面提到:本次升級協(xié)議層面完全沒變,但這并不代表代碼層面沒有變化。

2.0.0版本Java客戶端API不向后兼容1.x。言外之意:接口協(xié)議雖不變,但實現(xiàn)接口的代碼API變了,不兼容1.x了。我們知道Eureka發(fā)送Http請求使用的是glassfish的Jersey客戶端,版本變強便是本次不兼容的主要原因:Eureka 1.x版本默認使用Jersey 1.x(可選支持Jersey 2.x),而Eureka 2.0.0版本使用的是jersey 3.x。

圖片

從Jar包層面可以看出,除了?javax.*? -> jakarta.*,改變得并不多,官方描述的是2.0.0大部分Java客戶端API保持不變。

另外,eureka-server這個模塊現(xiàn)在并不能直接打成一個WAR包部署,因為“官方”(這里主要指的Spring官方)覺得沒有必要,畢竟你不太可能單獨去裸跑它。推薦的使用方式是作為Spring Cloud Netflix的一部分跑在Spring Boot應(yīng)用上,非常方便。

使用兼容性示例

大版本號升級了,并且還存在一定阻斷式,但官方又一直強調(diào)改變得不多,那么到底如何呢?保險起見,筆者跑了幾個典型case看看:

eureka-server:下圖可看到1.x和2.x的后臺頁面一毛一樣

圖片

圖片

服務(wù)注冊。筆者啟了一個基于Spring Cloud 2021版本(基于1.x的eureka-client)的應(yīng)用,分別進行注冊到1.x和2.x的eureka-server,情況為:完全兼容,無任何違和感,符合官方說的協(xié)議層面100%兼容

圖片

圖片

集群模式。1.x和2.x可以無縫的組成集群模式,筆者親測!這里就不貼圖了,留給你自己玩一玩哈

聲明:本文的case只做簡單的現(xiàn)象、效果測試,不對最終生產(chǎn)環(huán)境負責(zé),請酌情參考

總結(jié)?

本次大版本號升級,雖然不是虛晃一槍但也僅屬小打小鬧。對你之前學(xué)習(xí)過的Eureka知識、源碼并不構(gòu)成沖擊,基本沒什么變動,也算一件好事。

責(zé)任編輯:武曉燕 來源: YourBatman
相關(guān)推薦

2021-09-17 18:34:05

騰訊QQ移動應(yīng)用

2009-07-10 09:40:16

Google操作系統(tǒng)Chrome市場

2010-05-06 20:45:47

木馬網(wǎng)絡(luò)安全360安全中心

2017-06-06 15:13:07

2020-01-06 18:55:52

移動支付微信銀聯(lián)

2009-08-27 09:45:42

Apache Came

2024-02-29 16:11:05

2011-12-02 14:55:39

Java工具

2022-01-19 09:37:29

微軟Windows11Windows

2020-10-29 12:56:29

黑客特朗普網(wǎng)絡(luò)攻擊

2013-08-06 17:54:32

2019-06-12 07:50:23

自動駕駛人工智能AI

2011-07-22 09:37:58

阿里云云計算馬云

2021-12-08 15:28:45

元宇宙網(wǎng)易云信

2021-12-10 10:27:58

谷歌Android汽車

2019-08-19 19:33:47

北京互聯(lián)網(wǎng)區(qū)塊鏈

2024-01-10 16:47:17

2022-01-18 06:28:01

Windows 11操作系統(tǒng)微軟

2018-05-30 14:56:24

Spring輕量化Java 8
點贊
收藏

51CTO技術(shù)棧公眾號