自 2.4 以來 3.0 的變更
Observation
現在支援使用 Micrometer 啟用計時器和追蹤的觀察功能。請參閱 Micrometer 觀察 以取得更多資訊。
原生映像檔
提供建立原生映像檔的支援。請參閱 原生映像檔 以取得更多資訊。
AsyncRabbitTemplate
AsyncRabbitTemplate 現在傳回 CompletableFuture 而不是 ListenableFuture 。請參閱 Async Rabbit Template 以取得更多資訊。 |
Stream 支援變更
RabbitStreamOperations 和 RabbitStreamTemplate 方法現在傳回 CompletableFuture 而不是 ListenableFuture 。 |
現在支援超級串流及其上的單一作用中消費者。
請參閱 使用 RabbitMQ Stream 外掛程式 以取得更多資訊。
@RabbitListener
變更
批次監聽器現在可以取用 Collection<?>
以及 List<?>
。批次訊息傳遞配接器現在確保方法適用於取用批次。當將容器工廠 consumerBatchEnabled
設定為 true
時,也會將 batchListener
屬性設定為 true
。請參閱 搭配批次的 @RabbitListener 以取得更多資訊。
MessageConverter
現在可以針對空值傳回 Optional.empty()
;目前由 Jackson2JsonMessageConverter
實作。請參閱 從 Message
轉換 以取得更多資訊
您現在可以透過容器工廠而非透過 @RabbitListener
上的屬性來設定 ReplyPostProcessor
。請參閱 回覆管理 以取得更多資訊。
@RabbitListener
(和 @RabbitHandler
) 方法現在可以宣告為 Kotlin suspend
函數。請參閱 非同步 @RabbitListener
傳回類型 以取得更多資訊。
從 3.0.5 版開始,具有非同步傳回類型 (包括 Kotlin suspend 函數) 的監聽器會在失敗後叫用 RabbitListenerErrorHandler
(如果已設定)。先前,錯誤處理常式僅在同步叫用時叫用。
連線工廠變更
AbstractConnectionFactory
中的預設 addressShuffleMode
現在為 RANDOM
。當提供多個位址時,這會導致連線到隨機主機。請參閱 連線到叢集 以取得更多資訊。
LocalizedQueueConnectionFactory
不再使用 RabbitMQ http-client
程式庫來判斷哪個節點是佇列的領導者。請參閱 佇列親和性與 LocalizedQueueConnectionFactory
以取得更多資訊。