min*_*ibi 5 java real-time netty project-reactor
我知道第二个是基于第一个,但我很好奇除了 API 之外还有什么区别?是否可以与 Reactor 建立推送模型连接?我将创建一个实时应用程序,因此我必须找到最适合此目的的应用程序。我将不胜感激任何帮助:)
在这种情况下,API 不仅仅是语法糖。它传播反应式合约。反应式合约保证生产者不会产生比消费者可以在不阻塞的情况下消耗的任务/消息/任何内容更多的任务/消息/任何内容。这通过限制线程切换来保证处理能力的最佳使用(我过度简化以保持简短)。在 Netty 级别,反应式合约的传播意味着在处理完线路上的数据之前不发送 TCP 确认。
我不知道“实时”对你来说意味着什么,但 Reactor 可能是你的朋友。无论如何,它出色的 API 对于任何具有可分为多个阶段的处理的应用程序都是有意义的。
我在 Netty 之上编写了自己的库,所以我知道我在说什么。Netty 连接器吐出可以进入 Reactor Flux 的 Command 对象,但我没有提供传播 Reactive Contract 的方法。这是几年前的事了,当时 Reactor Netty 还被称为 Reactor IO,而且还处于起步阶段。此后 API 已被完全重写。
所以我的建议是:如果您需要 Reactive Contract,请继续使用 Reactor Netty。
这可能并不简单,如问题动态合并通量中所述。但我的问题可能有一个简单的答案,并且(取决于您的应用程序)您可以在自己的 Flux 中处理每个请求。