reactor-v1.x.x与reactor-v2.x.x相对应

时间:2014-08-28 06:51:59

标签: reactor

我们正在评估反应堆库,以便在我们的项目中使用它。我们的项目得到了春季背景的支持。所以我们需要一个工具来构建具有弹簧支持的事件驱动的应用程序。

此外,我们关注的主要领域是编写异步事件序列(Streams& Promises)的能力。在某些其他用例中,我们可能需要发布者/订阅者模型或异步运行长时间运行的进程。

正如我评估的那样,我注意到以下一些最新发布的反应堆弹簧版本是v1.1.3,依赖于reactor-v1.1.3我们可以使用。

但我也注意到那里有reactor-v.2.0.0(正在开发中),它有很多变化,特别是在Streams和Promises方面。

请建议我使用弹簧支持使用reactor-v1.1.3是否是一个好主意,或者如果我们必须使用更多Streams和Promises,我们是否应该等reactor-v2.0。

如果我们继续使用reactor-v1.1.3.RELEASE可能需要多少代码更改才能将自己升级到v2.0.0。

我还想检查一下reactor-v1.1.3 / v1.1.4是否有“反应器样品”分支。截至目前,我只能看到一个主分支可用,已更新为使用reactor-v2.0。

我们是否有最新版本v1.1.4的reactor API。目前API(https://reactor.github.io/docs/api/)指向Reactor 1.1.0 Release。

哪里可以找到reactor-core-2.0.0代码库?我发现很难找到。

由于我是这个图书馆的新手,如果我提到的任何要点/问题不正确,请随时纠正我。感谢。

1 个答案:

答案 0 :(得分:3)

如果您正在开始新的开发,请务必使用Reactor 2.0。它主要是StreamPromise API的重大改进,导致不得不碰撞主版本号。其余代码库的差异非常小。在1.1代码和2.0代码之间进行转换需要一些包重命名和一些调整(比如在Deferred 1.1中删除使用Stream对象。)

证明重大点释放的另一个重大变化是Reactive Streams specification的实施。它超出了这个问题的范围,进一步讨论它,但它是Reactor向前发展的重要部分。能够与Akka Streams,Ratpack,RxJava以及其他已经(或将很快)实现Reactive Streams的库本地集成,这对Reactor 2.0来说是一个巨大的好处。

The reactive-streams branch包含Reactor 2.0的代码。 M1即将推出,我们将开始更新样本的过程,但是正如您已经注意到的那样,一些组件如Spring支持已经不得不碰到Reactor 2.0,因为它们依赖于一些主要的近乎生产的应用程序。