天天看點

邁向應用現代化,企業開發離不開VMware Spring

作者:濤哥說事

“比你優秀的人,比你還努力”,這不是在說VMware Spring高效開發架構嗎?

在蓬勃發展的Java市場,Spring是最受歡迎的程式語言。2021年,Snyk公布的JVM生态系統報告顯示:在Java市場,一半以上在使用Spring Boot,作為伺服器端的應用開發架構,其主導地位毋庸置疑。在GitHub上,2022年的資料顯示:Spring Boot排名前四,Spring Framework則跻身前六。

今天,Spring已經廣泛用于全球的企業中,與Java的更新保持同步,Spring大約每六個月就會更新一次。2022年,Spring Boot Maven的下載下傳量較上一年有62%的增長。

2009年,VMware收購了SpringSource,2019年又完成了對Pivotal的收購,按VMware Spring開發者布道師Josh Long的話說,VMware一直在努力實作對Java技術的承諾。

邁向應用現代化,企業開發離不開VMware Spring

VMware Spring開發者布道師 Josh Long

今天,在邁向應用現代化的新征程中,由于雲原生、人工智能等新技術的加持和推動,應用開發将被重構,Spring是否也會脫胎換骨?

Spring是必備技能

與Josh Long雖然隻是一次遠端視訊交流,但仍能真切地感受到他對Spring的熱愛。“我是Spring的頭号粉絲。”Josh Long坦言,他于2010年加入Spring團隊,完全是因為真心喜歡這項技術。已經出版過7本書,并在全世界旅行的Josh Long與成千上萬Spring的開發者、使用者見面、交流,同樣深切地感受到了使用者對于Spring的喜愛。“Spring勝在各方面的整合非常好,既提供了完善的軟體,又能夠與雲端架構整合,還具有高安全性等。很多專家投入到Spring社群中,解決了很多業務上的難題,切切實實改變了這個行業。”Josh Long表示,“Spring對于Java開發者來說已是必備的技能。”

在雲原生的世界中,Spring的效能被進一步放大。Spring可以讓企業的開發做得又快又好。随着Spring推出最新的AOT引擎,允許開發者直接在機器上做本機編譯的動作,時間少于100毫秒,并可産生自洽式二進制碼,不僅能夠更快地直接啟動,啟動速度提高3%~24%,而且減少了RAN的使用。

邁向應用現代化,企業開發離不開VMware Spring

2022年11月,Spring Framework 6和Spring Boot 3釋出,其基礎是Java 17和Java 19;2023年5月18号,Spring Boot 3.1登場亮相,AOT引擎以及新的原生鏡像編譯技術的加持,讓Spring Boot邁上了新的台階。Spring的演進速度确實非常快,接下來針對Java 21的新版本已列入釋出計劃,屆時非阻斷式的I/O上線,将成就虛拟執行技術,使得效能有更大幅度的提升。

據Josh Long透露,目前VMware Spring正在推動幾項新的計劃,其中Spring Boot仍是最重要的一環,而AOT引擎也是不容忽視的。VMware為Spring的演進提供了長期支撐,并與業内多家合作夥伴攜手共進,比如與微軟合作開發了Azure Spring Cloud Enterprise。

人人都愛Spring

一部曾經榮獲過美國艾美獎最佳喜劇獎的電視劇名叫《人人都愛雷蒙德》,在企業級應用開發領域,“人人都愛Spring”也是實至名歸。

Spring為何如此受歡迎?一個非常重要的的原因是,Spring是一個開源系統,背後有一個強大的社群在推動其更新和演進。Spring是一個龐大的架構,應用層次非常廣,包含Spring Cloud、Spring Boot等。簡單說,Spring的價值就是将Web架構改造成微服務的形式。實際上,Spring Cloud與Spring Disflow雲原生就是一個很好的做微服務的架構,如果你對應用十分了解,整個系統也不并太複雜,那麼完全可以直接套用Spring的Framework,實作對微服務的拆解。

很多人都吃過肯德基或麥當勞的套餐。我們已經習慣和服務員說,我要“雞肉或牛肉套餐”,而幾乎不再和服務員确認套餐之中預設包含的可樂、薯條等。Spring與Spring Boot的關系就有點像是一個約定俗成的套餐,Spring是一個整體的架構,而Spring Boot則是套餐中那些預設的設定内容。開發者可以直接使用Spring Boot達成業務目标,而不需要大費周章進行其他設定。

AOT引擎的推出是一個創新。它為什麼可以跑得更快?相比傳統Java,它通常是在用到時才啟動并占用資源。不使用就不占用資源固然好,但對效能的要求更高,一旦投入應用就要立刻啟動。AOT引擎的機制是,在應用之前就提前準備好,這會大大降低啟動時帶來的延時。類比空調制冷,傳統Java開發就像傳統的空調,會設定一個初始溫度,比如25℃,當溫度低于25℃,空調壓縮機就會完全停止工作,當溫度升高超過25℃後又會再次啟動;而AOT模式更像現在流行的變頻制冷方式,在低于标準溫度時,空調壓縮機不會“真正”停止工作,而是進入到另外一種模式,當需要再次工作時,便能立刻啟動。

技術上的持續創新是Spring永保活力的重要原因。作為布道者,Josh Long所到之處皆受到了Spring開發者和粉絲們的追捧,關于Java技術和Spring如何幫助企業和開發者解決業務難題的讨論一如既往的熱烈。VMware長期以來對Spring十分重視,進行了大量投資,支援Spring社群的發展,并且整合了大量客戶喜歡的工具、産品和解決方案,再加上自己的研發積累,保證Spring在技術上的與時俱進,同時深入到各行各業的開發實踐中。如今,Spring已經是VMware Tanzu開發套件中非常重要的一個元件,而VMware Spring Runtime能夠提供企業級Java的資源。實際上,VMware本身就是Spring的一個深度使用者,其很多産品在開發時都用到了Spring架構。

針對企業級客戶的應用開發,VMware Spring能夠提供全面的技術和服務支撐,比如Spring生态可以支援七八十種開源架構。毫無疑問,VMware是Spring社群裡的中堅力量,它擁有足夠數量的專家,能夠幫助客戶達成既定目标。“有的使用者可能擔心,在使用Spring時會面臨JDK方面的問題。VMware與其他大廠的合作十分緊密,提供的OpenJDK完全能夠滿足使用者的需求。”VMware現代化應用事業部技術總監俊剛舉例說,“像現在主流的面向Java運作的一個中間件Tomcat,VMware也能提供良好的支援,以確定客戶業務的連續性。”

據了解,為了保證行業客戶友善、無障礙地使用VMware Spring,VMware的專家團隊提供了7×24小時不間斷的支援,針對Spring所有的元件,以及軟體版本的更新維護等提供行之有效的保障措施。俊剛補充說,VMware與第三方合作夥伴共同建構了Spring的應用生态,為客戶提供專業的教育訓練以及技術服務等。比如,VMware在大中華區擁有一個VMware唯一授權的Spring中國教育管理中心,針對所有的企業應用開發人員和第三方合作夥伴的開發人員,提供完善、專業的教育訓練服務。

雲原生、AI雙輪驅動軟體開發

雲原生時代可以說是Spring全面綻放的時代!

“其實,不管是雲原生還是微服務,這些都是企業的基礎架構。企業使用者關注的并不是技術本身,因為技術隻是解決問題的路徑。使用者真正想要的是不斷的改變,變得更快更具效率,全面達成業務目标。”Josh Long表示,“雲原生可以幫助使用者實作自動部署、持續整合,更靈活、更具彈性地推出新的微服務。這些微服務更容易被了解,也更容易被更改,而且在更改的時候并不會影響到整體架構。Spring保證了在雲原生環境下,程式代碼更幹淨,并且經過良好的測試,更易被了解。Spring已經被廣泛應用于生産級的開發,支撐企業快步走向應用現代化。”

據了解,國内很多大型金融公司,以及網際網路企業和雲服務商等都在基于Spring進行開發。實踐證明,Spring不僅是一個高效的開發架構,更是生産力提升的重要工具。俊剛介紹說,為了提升開發者的體驗和效率,VMware創新性地将很多Spring開源項目嵌入到其商業化應用服務平台産品中,比如VMware下一代的雲原生應用平台Tanzu Application Platform就内嵌了Spring的強大能力。

如今,随着生成式AI的快速興起,人工智能将重新定義軟體開發的讨論越來越熱烈。Josh Long就表示,他已經使用過ChatGPT,并且體驗良好。現在,越來越多類似的産品推出,這對于Java開發者來說是一個好的機會,他們能夠借助大型語言學習模型更容易地編寫代碼。

毋庸置疑,在AI、機器學習、大模型等的助力下,Spring能夠持續提高開發效率。在AI方面,VMware一直在持續布局,比如曾經與美國伯克利大學合作開發了面向開發者的機器學習的算法庫,并且已經嵌入到VMware Tanzu中。在Spring架構和優秀算法庫的支援下,企業使用者和社群開發者能夠快速地建構大資料模型,滿足不同業務場景的需要。