gpt4 book ai didi

rx-java - vert.x 和 RxJava 的区别

转载 作者:行者123 更新时间:2023-12-03 15:20:06 26 4
gpt4 key购买 nike

我们正在为我们的一个项目评估响应式(Reactive)编程框架。我刚刚浏览了 vert.x 教程。我检查了 RxJava 演示文稿。 RxJava 似乎更接近 CompletableFuture。但是,尽管有底层模式,RxJava 和 Vert.x 都可以访问非阻塞编程。我很困惑他们之间有什么区别。我将不胜感激在这方面的任何帮助。

最佳答案

Vert.x 是一堆模块和扩展,统称为工具包。核心模块包含 Web 服务器和称为 Verticle 的并发模型。 RxJava 是 ReactiveX 的 Java 实现。两者都基于事件驱动的原则,但 Web 服务器无法与 RxJava 相提并论。

所以我猜这里的基本比较是在 之间。 Verticle 与 RxJava .

垂直 是一个类,其状态除了通过事件总线外完全无法从外部访问。因此,消息以单线程方式依次传入、排队和弹出。这个想法是创建一个线程安全的环境,而不必处理 Java 臭名昭著的锁定机制。同样在并发术语中,这种结构称为 Actor。

何时使用:当您需要使用 Java 的 synchronized 时堵塞。多个线程需要访问类变量(也就是竞态条件)的情况是您可以删除 Verticle 或 Actor 的同步。在 Vert.x 中,您可以在不运行 Web 服务器的情况下使用 Verticle。

解释 RxJava 想想 Java 8 Stream,它引入了流和高阶函数,如 map , filter , zip等关于收藏。 RxJava 的用例是流是异步的。

何时使用:当您想要操作流时。例如,将电影流中的帧与另一个流中的字幕匹配(毕竟 RxJava 是由 Netflix 创建的)。或者从几个股票市场行情中进行实时分析。

关于rx-java - vert.x 和 RxJava 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44151560/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com