搶先一步
VMware 提供培訓和認證,以加速您的進度。
了解更多[更新] 繼我們的 Reactor 2.5 介紹之後,我們將版本移至 3.0,以更好地反映所進行的重大重新設計工作。
先前的 reactor-stream 模組已合併到 Reactor Core 3.0 中。Flux 和 Mono 分別代表 0..N 和 0..1 序列類型,現在涵蓋以下類別的廣泛操作
publish
、publishNext
、cache
、multicast
...buffer
、reduce
、scan
、window
、sample
...filter
、exists
、single
...timeout
、take
、takeUntil
、skip
、skipUntil
...withLatestFrom
、combineLatest
onBackpressureDrop
、onBackpressureLatest
...雖然功能存在,但我們現在正在使用超高效的 Reactive Streams Commons 運算符實作。
所有 Reactor 3.0 專案 都已升級到 Java 8。雖然 JVM 市場正在 Java 8 上進行標準化,但我們認為沒有理由再延遲我們的轉變。 讓我們列舉一下好處
reactor.fn
中的所有“反向移植”功能回調都已被 java.util.function
取代。 因此,Reactor 提供了一個標準的互動式合約和一個有競爭力的表面 API。Flux
轉換為/從 java.util.stream.Stream
轉換Mono
轉換為/從 CompletableFuture
轉換Optional
建立 Mono
Duration
的健全時間段支援一些 Java 8 提取器和產生器正在運作
java.util.stream.Stream<String> stream =
Mono.fromFuture(someCompletableFuture)
.timeout(Duration.ofSeconds(30))
.log("hello")
.flatMap( pojo -> Flux.just(pojo.getId(), pojo.getName())
.toStream();
Flux.fromStream(stream)
.delayMillis(1000L)
.subscribe(System.out::println);
我們可能會設想稍後為 Android 兼容性進行反向移植,但目前我們的重點是 Java 8 應用程式及更高版本。
Flux
和 Mono
操作設計-- 建立在來自 Reactive4Java
、RxJava
和 Reactor
的多年經驗基礎上 -- 高效、非常高效,甚至支援透過操作融合實現更高的效率 -- 來自 Reactive Streams Commons 的更多效能基準
Mono
發布-訂閱:MonoProcessor<T>
有關更多詳細信息,請參閱 問題追蹤器。
透過此版本,我們擁有一個我們認為對函式庫和應用程式開發人員都有用的基礎。 我們已準備好收集更多回饋,而我們的下一站將是 Reactor IPC:Reactor Aeron 和 Reactor Netty。 現在有很棒的計劃正在醞釀,以幫助您跨越包含背壓的網路邊界! 這兩個鼓舞人心的特點與 Reactor Core 中的特點相同:專注於 API 和效率,無需額外的儀式或學術背景。
同時,我們正在加倍努力來創建各種入門體驗,期望一些部落格、指南以及與 Spring Boot 團隊的密切合作,讓您只需稍作努力即可觸手可及地獲得這種美好體驗。