取得領先
VMware 提供培訓和認證,以加速你的進程。
瞭解更多嗨,Spring 的粉絲們!看看,這是 2020 年代第一次 SpringOne 實體活動後的星期一,也是疫情以來第一次,老實說,我累壞了!拉斯維加斯是一個令人眼花繚亂、聳人聽聞、讓人招架不住、又令人興奮的體驗,SpringOne 也是如此。但這一切都值得。SpringOne 展覽超出了所有人的預期,絕對值得。
這種壓倒性的規模在主題演講中表現得最為明顯,現場座無虛席。我無法真正回顧整個展覽,但我確實想談談你在主題演講中會看到的一些重大主題。
在主題演講中,優秀、偉大、無與倫比的 David Syer 博士、Moritz Halbritter 和我慶祝了 Spring Boot 十週年。(是的,它已經十年了。我也不敢相信!)今年,我們還慶祝了 Spring Framework 二十週年!你們當中精明的人會知道 Spring Framework 1.0 直到 2004 年才發佈,也就是 19 年前,但在 Spring Framework 的早期版本中,外觀和名稱都與我們今天所知的 Spring Framework 相似。你們當中更加精明的人可能會記得 Spring Boot 是在 2014 年 4 月 1 日發佈的,也就是九年前,但在 2013 年也有早期版本。
Syer 博士和我回顧了過去的十年,查看了該技術的各種版本,包括一些軼事和關於事物如何變化和發展,以及更重要的是,事物如何保持不變的思考。我們做了一些令人難以置信的事情。我們復活(可能僅限時?)了古老的 Spring Initializers!想要產生一個以 Spring Boot 1.0 為中心的專案?請造訪 start100.spring.io。1.5? Start150.spring.io。2.0 左右? start200.spring.io。當然,如果你想建立一個 3.x 專案,請造訪現代的 start.spring.io 體驗。在我們的演示中,我們將同一個應用程式從 1.0(看看!starters、start.spring.io
、自動配置等)、2.0(反應式、動畫 ASCII 藝術、Kubernetes 支援等)演進到 Spring Boot 的倒數第二個版本 3.0(GraalVM 原生映像、優化、Jakarta EE 等),該版本於 2022 年 11 月發佈。那麼 3.1 呢?
Spring Boot 貢獻者 Moritz Halbritter,身穿皮褲(你必須親自到場……),幫助 Syer 博士和我趕上了 Spring Boot 3.1 的最新和最棒的版本,加入了 Testcontainers 和 Docker Compose 支援。整整 15 分鐘的過程非常有趣,但這甚至不是我們那天看到的唯一的事情。
Spring Framework 的領導者、傳奇人物和共同創辦人 Juergen Hoeller 回顧了 Spring 二十年的歷史(還有誰比他更適合?他參與了全部 20 年!),然後介紹了 Spring Framework 6.1(以及預計今年 11 月底推出的 Spring Boot 3.2)支援的一些絕佳新機會和主題,包括 Project Loom、Project CRaC、Java 21 等。
Juergen 奠定了基礎,後續的講者端上了甜點,為我們帶來了細節。依我來看,Cora Iberkleid 的貢獻,介紹(並揭開神秘面紗)了 Spring Framework 6.1 中虛擬執行緒 (Project Loom) 的驚人力量,可能是主題演講中最精彩的部分。她介紹了 spring.threads.virtual.enabled=true
,你將在 Spring Boot 3.2 中指定它,並使用 Spring Framework 6.1,以在受支援的 portfolio 專案(如 Apache Tomcat、Spring Data 等)中啟用虛擬執行緒。
我一直以來都說,虛擬執行緒可能是我最喜歡的 Java 新增功能。有些人離開了這個生態系統,並使用遠不如 Java 的語言來獲得 Project Loom 承諾帶給 Java 的東西。它就是這麼具有革命性,我迫不及待了!請記住,包含 Project Loom 的 Java 21 預計將在 2023 年 9 月 19 日推出!千萬不要錯過!
Project Loom 承諾顯著提高具有阻塞 IO 工作負載的可擴展性,那麼啟動和效能呢?Spring 在 GraalVM 方面表現出色,自 Spring Boot 3.0 和 2022 年以來一直受到支援。情況只會越來越好。GraalVM 在減少給定服務的記憶體開銷並縮短啟動時間方面做得很好。
但 GraalVM 不是縮短啟動時間的唯一方法。還有一項新的倡議,也受到 Spring Framework 6.1 的支援,稱為 Project CRaC (Coordinated Restore at Checkpoint),它提供了顯著縮短的啟動時間。反應式和 Netty 傳奇人物 Violeta Georgieva 上台討論了使用 JVM 檢查點還原來擴展到零。
啟動時間在各種工作負載中都至關重要,例如平台即服務,尤其是在無伺服器、擴展到零和函數即服務平台中。在這裡,我們有一些令人興奮的新發展。AWS 的 Mark Sailles 和 Spring 和事件傳奇人物 Oleg Zhurakousky 介紹了一個令人興奮的新領域:編寫 Spring MVC 風格的 `@Controller's,可以在 AWS Lambda 和 Azure Functions 等無伺服器基礎架構上部署和擴展到零。
說到 Azure,微軟的 Asir Selvasingh 和 VMWare 的 Adib Saikali 有一個精彩的環節,介紹了 Azure Spring Apps 的一些絕佳新機會(和折扣!),Azure Spring Apps 是一個在 Microsoft Azure 上共同開發和管理的平台。他們演示的一件事是使用 AI - 「人工智慧?」我聽到你倒吸一口氣,「在 2023 年?我本來不可能預見到這一點!」- 透過 Azures OpenAI 整合,這是一種託管的 OpenAI 即服務產品,人們可以透過 Microsoft Azure 以熟悉、整合的方式使用它。它與新的 Spring AI 專案配合得非常好!
這將我們帶到了:Spring AI 已經到來!這個小環節爆紅。Spring Data 的第一任領導者、Spring.NET 的創建者和 Spring Cloud Data Flow 的共同創辦人 Mark Pollack 博士舉辦了一個環節,人們對新生的 Spring AI 充滿興趣,我甚至與他進行了 直播討論。Spring AI 帶來了一個簡單的 AiClient
,你可以自動配置(為你選擇的大型語言模型提供適當的密鑰)並注入,以使其產生對人類語言查詢的回應。生活在這樣的時代真是太好了!
有一個令人難以置信的五分鐘蒙太奇,其中包含了 Spring 生態系統中傑出人物的讚譽、祝賀和祝福 - 包括 Matt Raible(Okta 開發者倡導者和 Java Champion)、Trisha Gee(Gradle 開發者倡導者和 Java Champion)、Mala Gupta(Jetbrains IntelliJ IDEA 開發者倡導者和 Java Champion)、Sergei Egorov(Testcontainers 和 Atomicjar 的共同創辦人)、Andreas Marek(GraphQL Java 的創辦人)、Alina Yurenko(Oracle Labs 的 GraalVM 開發者倡導者)、Roman Elizarov(Kotlin 語言和協程的傑出人物)和 Marc Philipp(JUnit 團隊負責人)。
這些只是你應該看到的一些主要主題,你應該在這裡觀看。我沒有機會能夠捕捉到我最喜歡的十個環節。你應該在這裡觀看它們,因為它們已經上線了。(其中一些已經在那裡了,所以趕快去看吧!)
這個展覽肩負著一個不可能的重擔 - 為 SpringOne 提供期待已久的實體活動回歸,同時慶祝 Spring 20 週年(你看到了這個嗎)和 Spring Boot 10 週年,同時捕捉現代 JVM 時代精神中無與倫比的多樣性,並為世界上最大的生態系統做好準備,以迎接未來的發展。但不知何故,它做到了!我迫不及待地想迎接明年!