reactor.rx.Stream -> reactor.core.publisher.Flux
reactor.rx.Streams -> reactor.core.publisher.Flux
reactor.rx.Promise -> reactor.core.publisher.Mono and reactor.core.publisher.MonoProcessor
reactor.core.processor.RingBufferProcessor -> reactor.core.publisher.TopicProcessor
reactor.fn.Consumer -> java.until.function.Consumer (Java 8)
没有新的弹簧模块,因为弹簧5直接包括这些新类型的Reactor支持。
至于反应堆总线:现在设计所有流路线(磁通/单声道链)都是键入的,因此动态路由不是我们功能的一部分。 仍然有类型方式的替代方案,例如:
ReplayProcessor rp = ReplayProcessor.create();
Flux interest1 = rp.filter(ev -> filterInterest1(ev));
Flux interest2 = rp.filter(ev -> filterInterest2(ev));
Flux interest1_2 = rp.filter(ev -> filterInterest1(ev) || filterInterest2(ev));
interest1.subscribe(doSomethingForInterest1);
interest2.subscribe(doSomethingForInterest2);
interest1_2.subscribe(doSomethingForInterest1_2);
rp.onNext(new MyEvent("interest1")); //subscriber 1 and 3 react
rp.onNext(new MyEvent("interest1")); //subscriber 1 and 3 react
rp.onNext(new MyEvent("interest2")); //subscriber 2 and 3 react
rp.onNext(new MyEvent("interest4")); // buffered until interest subscriber because ReplayProcessor
//shutdown/cleanup/close
rp.onComplete();
我在github上发现了这个似乎符合你的需求