【问题标题】:Real time aplicaton, Reactor Netty vs Netty实时应用,Reactor Netty vs Netty
【发布时间】:2019-03-18 07:56:40
【问题描述】:

我知道第二个是基于第一个,但我很好奇除了 API 之外还有什么区别?是否可以与 Reactor 建立推送模型连接?我将创建一个实时应用程序,因此我必须找到最适合此目的的应用程序。我会很感激任何帮助:)

【问题讨论】:

  • API 本身会告诉您是否支持推送模型。通过深入了解 API,您还将开始了解使用它们的感觉,从而为做出最合适的选择做好准备。

标签: java netty real-time project-reactor


【解决方案1】:

在这种情况下,API 不仅仅是语法糖。它传播反应式合同。反应式合约保证生产者不会产生比消费者在不窒息的情况下可以消费更多的任务/消息/任何东西。这通过限制线程切换来保证处理能力的最佳使用(我过度简化以保持简短)。在 Netty 级别,Reactive Contract 的传播意味着在处理线路上的数据之前不发送 TCP 确认。

我不知道“实时”对您意味着什么,但 Reactor 可能是您的朋友。无论如何,它出色的 API 对于任何处理可以分成几个阶段的应用程序都是有意义的。

我在 Netty 上面写了my own library,所以我知道我在说什么。 Netty 连接器吐出可以进入 Reactor Flux 的 Command 对象,但我没有提供传播 Reactive Contract 的方法。这是几年前的事了,当时 Reactor Netty 被称为 Reactor IO,它还处于起步阶段。自那以后,API 已被完全重写。

所以我的建议是:如果您需要 Reactive Contract,请继续使用 Reactor Netty。

这可能很重要,如问题 Dynamically merging Fluxes 中所述。但我的问题可能有一个简单的答案,并且(取决于您的应用程序)您可以只在其自己的 Flux 中处理每个请求。

【讨论】:

    猜你喜欢
    • 2019-04-02
    • 2020-03-22
    • 2021-03-18
    • 1970-01-01
    • 2020-06-03
    • 1970-01-01
    • 1970-01-01
    • 2016-12-21
    • 1970-01-01
    相关资源
    最近更新 更多