我们正在评估 react 器库以在我们的项目中使用它。我们的项目得到了 spring 上下文的支持。所以我们需要一个工具来构建具有 spring 支持的事件驱动应用程序。

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

在我评估时,我注意到以下一些最新发布的 reactor-spring 版本是 v1.1.3,依赖于我们可以使用的 reactor-v1.1.3。

但我也注意到了 reactor-v.2.0.0(正在开发中),它有相当多的变化,尤其是在 Streams 和 Promises 领域。

请建议我使用具有 spring 支持的 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 samples”分支。到目前为止,我只能看到一个可用的主分支,该分支已更新为使用 reactor-v2.0。

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

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

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

最佳答案

如果您正在开始新的开发,请务必使用 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,因为它们依赖于一些主要的几乎生产应用程序.

关于reactor-v1.x.x 与 reactor-v2.x.x,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25542487/

10-13 01:23