Spring Boot 2.6的新特性

banq發表於2022-02-25

Spring Boot 2.6 有什麼新功能?
 

cookie會話上的SameSite屬性
你現在可以使用server.servlet.session.cookie.ame-site屬性為servlet應用程式配置SameSite屬性。這適用於自動配置的Tomcat、Jetty和Undertow伺服器。

此外,如果你想將SameSite屬性應用於其他cookie,可以使用CookieSameSiteSupplier介面。更多細節和一些示例程式碼,請參見更新後的文件。
 

反應式伺服器會話屬性
反應式伺服器支援的會話屬性(之前在spring.webflux.session下)在此版本中得到了擴充套件。新的屬性在server.reactive.session下可用,現在提供了與servlet版本相同的特性。

可插拔清理規則
Spring Boot 清理/env和/configprops端點中存在的敏感值。雖然可以配置透過配置屬性對哪些屬性進行清理,但使用者可能希望根據PropertySource屬性的來源應用清理規則。例如,Spring Cloud Vault 使用 Vault 來儲存加密值並將它們載入到 Spring 環境中。由於所有值都是加密的,因此將整個屬性源中的每個鍵的值置空是有意義的。可以透過新增SanitizingFunction型別的@Bean來配置這種淨化定製。
 

Docker 映象構建支援

  • 附加映象標籤

tagsMaven 和 Gradle 外掛現在支援在使用配置引數構建生成的影像後應用附加標籤。
有關更多詳細資訊,請參閱更新的GradleMaven參考文件。
  • 網路配置

networkMaven 外掛spring-boot:build-image目標和 GradlebootBuildImage任務中新增了一個配置引數。此引數可用於配置執行 Cloud Native Buildpacks 構建器程式的容器使用的網路驅動程式。
  • 快取配置

Maven 和 Gradle 外掛現在支援自定義卷的名稱,這些卷用於快取由 buildpack 使用buildCache和launchCache配置引數貢獻給構建映像的層。
有關更多詳細資訊,請參閱更新的GradleMaven參考文件。
 

健康支援

  • 主埠或管理埠上的附加路徑

可以在主埠或管理埠上的附加路徑上提供執行狀況組。這在 Kubernetes 等雲環境中很有用,在這些環境中,出於安全目的,為執行器端點使用單獨的管理埠是很常見的。擁有一個單獨的埠可能會導致不可靠的健康檢查,因為即使健康檢查成功,主應用程式也可能無法正常工作。典型的配置將所有執行器端點放在一個單獨的埠上,而用於活躍度和就緒性的健康組在主埠上的附加路徑上可用。
 

指標支援

  • 應用程式啟動

自動配置公開了兩個與應用程式啟動相關的指標:
  1. application.started.time: 啟動應用程式所用的時間。
  2. application.ready.time:應用程式準備好為請求提供服務所需的時間。

  • 磁碟空間

Micrometer的DiskSpaceMetrics現在是自動配置的。disk.free和disk.total指標是為當前工作目錄所確定的分割槽提供的。要改變使用的路徑,請定義你自己的DiskSpaceMetrics bean。
  • 任務執行和排程

只要底層的ThreadPoolExecutor可用,Micrometer的ExecutorServiceMetrics現在就能為所有ThreadPoolTaskExecutor和ThreadPoolTaskScheduler Bean自動配置。指標被標記為從Bean名稱中得出的執行器的名稱。
  • Jetty連線和SSL

Micrometer的JettyConnectionMetrics現在是自動配置的。此外,當server.ssl.enabled被設定為true時,Micrometer的JettySslHandshakeMetrics也會被自動配置。
  • 匯出到Dynatrace v2 API

增加了對匯出指標到Dynatrace v2 API的支援。在主機上執行本地 OneAgent 時,只需要依賴 io.micrometer:micrometer-registry-dynatrace 即可。如果沒有本地 OneAgent,必須配置 management.metrics.export.dynatrace.uri 和 management.metrics.export.dynatrace.api-token 屬性。其他針對v2版API的設定可以使用management.metrics.export.dynatrace.v2屬性進行配置。更多細節請參考更新後的參考文件。

 

相關文章