Spring Cloud Stream Horsham.M3 (3.0.0.M3) 版本發佈

工程 | Oleg Zhurakousky | 2019 年 8 月 19 日 | ...

我們很高興宣布 Spring Cloud Stream Horsham.M3 (3.0.0.M3) 的第三個里程碑版本。

注意:Spring Cloud Stream 3.0.0.M1/M2 主要是為了建立與 Spring Boot 2.2.x 的相容性,因此未發佈公告。

Spring Cloud Stream Horsham.M3 (3.0.0.M3) 模組可用於 Spring Milestone 儲存庫中。

快速重點

  • Spring Boot 2.2.x
  • Spring Cloud Function 3.0.0.M2

此里程碑的顯著功能與強化

強調函數式程式設計模型

雖然我們尚未棄用 @StreamListener 和/或 @EnableBinding,但我們正朝著更簡單、更自然的自動組態驅動程式設計模型發展。

@SpringBootApplication
public class MyApplicationConfiguration {

    @Bean
    public Function<String, String> uppercase() {
        return value -> value.toUpperCase();
    }
}

以上是一個功能完整的 spring-cloud-stream 應用程式。請注意,缺少 @StreamListener@EnableBinding。由於它是在 spring-cloud-stream 的環境中啟動的 Function(因為它在類別路徑上),因此有效地告訴我們 @StreamListener@EnableBinding 之前告訴我們的所有資訊(例如,Function 映射到 Processor,預設目的地名稱為 "input" 和 "output")。

注意:spring-cloud-function 的改進之一是我們不再將非反應式函數自動轉換為反應式函數。這意味著您的命令式函數將像任何其他訊息處理器(例如,StreamListener)一樣連接,而反應式函數將以與 spring-cloud-stream-reactive 模組上的反應式監聽器相同的方式連接(更多資訊請參閱另一篇部落格),從而為您提供更大的靈活性。

在接下來的幾週內,我們將更新 函數式支援 文件,提供更多詳細資訊。

Kafka Streams 中的函數式支援

Kafka Streams binder 現在支援基於 java.util.function 支援的一流函數式程式設計模型,您現在可以使用該模型編寫基於 java.util.function 支援的 Kafka Streams 應用程式。這進一步減少了應用程式需要編寫的樣板程式碼,並允許開發人員專注於手頭的業務邏輯。有關更多詳細資訊,請造訪 函數式樣式 區段以取得更多詳細資訊。我們計劃撰寫另一篇專文介紹所有新功能。

其他 功能、增強功能和錯誤修正

下一步

我們計劃在下一個里程碑中引入的一個重要功能是支援具有多個輸入和輸出的函數,我們將為此撰寫一篇單獨的部落格。

與往常一樣,我們歡迎各位的回饋與貢獻,因此請透過 StackoverflowGitHub 和/或 Gitter 與我們聯繫。

取得 Spring 電子報

隨時關注 Spring 電子報

訂閱

搶先一步

VMware 提供訓練和認證,可加速您的進度。

瞭解更多

取得支援

Tanzu Spring 在一個簡單的訂閱中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位檔。

瞭解更多

即將舉行的活動

查看 Spring 社群中所有即將舉行的活動。

檢視全部