弹簧集成中的反应器

时间:2014-11-02 04:13:14

标签: spring-integration reactor

阿尔乔姆。很高兴看到新版本的si。 是否可以在spring集成流程中使用reactor或rxjava? 喜欢这个

例如: 输入带有一些集合的xml =>无功分路器 - >无功变压器 - >反应出站

1 个答案:

答案 0 :(得分:2)

首先感谢您的反馈和对我们工作的关注。我们正在努力追随现实世界的趋势,并始终及时; - )。

好吧,关于Reactor或类似的Reactive Streams解决方案。

我注意确保你的"刮擦"流。即使Spring Integration看起来像Reactive Streams,我们也应该将它们组合起来并不重要。

首先,Spring Integration是一个受管理的'它需要Spring容器,因此如果你想将它与Reactor结合使用,你应该从提供Stream的代码访问Spring容器。从另一方面可以从Spring Integration访问Reactor Stream,我们应该最终使它成为一个Spring bean。

即将推出的Spring Integration 4.1引入了Promise<?> Gateway。因此,如果您的ControllerService是一个Spring bean并且代码是通过Reactor Stream组成的,那么您可以使用Gateway接口访问Spring Integration流 - 并且该Integration Flow的结果将是被填充为Event到下一个Stream Action。

当你需要{Spring}而不是push的{​​{1}}动作时,你可以做类似的事情。

假设你有反应堆pull bean:

Deffered

之后我们可以继续使用@Bean public Deffered<Integer, Stream<Integer>> reactorStream() { Deferred<Integer, Stream<Integer>> stream = Streams.<Integer>defer(new Environment()); stream.compose().collect(5).timeout(1000); return stream; }

channel-adapter

无论如何,我不建议从一个世界跳过这个世界。到另一个&#39;一直以来,因为我们可能会失去两者的最佳状态。或者Reactor Stream是一个主要的流程,都是Spring Integration。

我很高兴听到Reactor团队的其他一些想法: - )。