用於 AWS 的 Spring Integration 2.0.0.M2 和 Spring Cloud Stream Kinesis Binder 1.0.0.M2

釋出 | Artem Bilan | 2018 年 4 月 17 日 | ...

尊敬的 Spring 社群!

我很高興宣佈 Spring 專案的支援 Amazon Web Services 的里程碑版本: 用於 AWS 的 Spring Integration 2.0.0.M2用於 AWS Kinesis 的 Spring Cloud Stream Binder 1.0.0.M2

這兩個里程碑版本都可以在 Spring 里程碑儲存庫中找到,它們可以作為 Maven 依賴項使用。

<dependency>
    <groupId>org.springframework.integration</groupId>
    <artifactId>spring-integration-aws</artifactId>
    <version>2.0.0.M2</version>
</dependency>

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-stream-binder-kinesis</artifactId>
    <version>1.0.0.M2</version>
</dependency>

當使用第二個依賴項時,不需要包含第一個依賴項。 AWS KinesisAWS DynamoDB Java SDK 依賴項也以傳遞方式包含在 AWS Kinesis Binder 中。

這些里程碑是團隊和一些第三方貢獻者在透過 StackOverflow 問題、Gitter 聊天、錯誤報告和功能請求獲得的社群寶貴反饋後做出的努力成果。因此,感謝所有參與者!

以下是自之前宣佈的 里程碑 1 以來所做的更改。

  • KinesisMessageDrivenChannelAdapter 針對 AWS 客戶端中發生的間歇性網路錯誤改進了容錯能力。

  • Kinesis Checkpointer 已改進為基於 ConcurrentMetadataStore,以實現更好的併發互動,尤其是在叢集環境中 - 消費者組。

  • 已為 SqsMessageHandlerSnsMessageHandler 實施了標頭對映機制 - SqsHeaderMapperSnsHeaderMapper 分別作為現成的實現。

  • 由於 AWS Kinesis 不提供任何標頭表示法,因此我們透過將標頭嵌入到 Kinesis Record 主體中來實現解決方法。為此,KinesisMessageHandlerKinesisMessageDrivenChannelAdapter 應分別配置 OutboundMessageMapperInboundMessageMapper。作為一個不錯的選擇,可以使用現成的 Spring Integration EmbeddedJsonHeadersMessageMapper 在兩側透過 AWS Kinesis 傳輸任何所需的訊息標頭。

  • KinesisMessageDrivenChannelAdapter 還提供了在使用 ListenerMode.batch 時轉換記錄的邏輯。

  • 已根據 Spring Cloud Stream 和 Spring Integration AWS 中的最新更改和修復更新了 KinesisMessageChannelBinder

  • 還引入了一種新的 rawRecords 偵聽器模式。 預設情況下,Kinesis Binder 配置為 record 模式,其中要發出的訊息包含有效負載作為 byte[],以供 Spring Cloud Stream 進行下游轉換。 batch 模式現在生成一個 List<byte[]>,而這個新的 rawRecords 模式生成一個訊息,其有效負載為 List<Record> - 所有轉換為業務模型的邏輯都取決於目標 @StreamListener 方法中的終端使用者。

與往常一樣,歡迎透過適當的溝通渠道提供任何反饋、功能創意、批評、錯誤報告和問題!

Spring Integration AWS 專案頁面 | 用於 AWS Kinesis 的 Spring Cloud Stream Binder 專案頁面 | 幫助 | 聊天

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

搶先一步

VMware 提供培訓和認證,以加速您的進步。

瞭解更多

獲得支援

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

瞭解更多

即將舉行的活動

檢視 Spring 社群中所有即將舉行的活動。

檢視全部