今天我发现,对于java中的并发,我们有像Akka
这样的好框架,我还发现,有一个像RxJava
这样的反应式编程框架,用于在应用程序中执行多线程
。但是我仍然很困惑!为什么两者都比Java并发
框架好?
如今,反应式编程是一个成熟的话题,大多数语言都支持函数式反应式编程,例如Netflix
为不止一种语言提供有关反应式编程
的API。Rxjava
是用于java
、scala
等的API之一。根据RxJava
,他们在内部使用参与者来维护多线程
和Akka
也使用Actors
进行多线程
编程。
那么,Akka和反应式编程方法之间的区别是什么?为什么它们在Java并发性中表现良好?
基于actors的Akka流提供了actors和流之间的互操作,例如:
根据Mathias Doenitz的说法,与Akkas Reactive Streams实现不同,RxJava没有背压。但是RxJava似乎正在努力增加背压。
这两个框架都将能够通过反应式流spi进行交互。所以你可以做非常相似的事情。根据Mathias的说法,不同之处在于Akka实现在内部基于参与者,而不是多线程。结果将更加出色。
我的信息来源是Mathias上周在Dutch Scala用户组发表的演讲。
编辑:我站在RxJava中更正了反压支持。如果您按照Eriks链接,您可以阅读反压的含义。
本文向大家介绍Java并发中CountDownLatch和CyclicBarrier之间的区别,包括了Java并发中CountDownLatch和CyclicBarrier之间的区别的使用技巧和注意事项,需要的朋友参考一下 CountDownLatch和CyclicBarrier都在多线程环境中使用,它们都是其中的一部分。 根据Java Doc- CountDownLatch-同步辅助,允许一个或
问题内容: 在最近几个主要版本的Java的每次迭代中,似乎都有一致的新方法来管理并发任务。 在Java中9,我们有流API这类似于可流动API RxJava,但与Java 9有一个更简单的一组类和接口。 Java 9 有,,,,和,这就是它。 RxJava的 拥有全 包 的流API状类,即,,,,和这似乎做同样的事情。 这两个库之间的主要区别是什么?为什么有人会使用Java 9 Flow库而不是种
问题内容: 我想知道的区别 ,和 。 我所知道的都是异步的,但是 阻塞线程 提供回调方法 -– 与其他好处相似(不确定) 例如:如果客户端需要进行多个服务调用,并且当我们使用(Java)时将依次执行…希望了解其在RxJava中的效果如何。 并且文档http://reactivex.io/intro.html说 很难使用Future来最佳地组成条件异步执行流(或者是不可能的,因为每个请求的延迟在运行
我想知道、和之间的区别。 我知道的是所有的都是异步的 --与类似,但有其他优点(不确定) 例如:如果客户端需要进行多个服务调用,并且当我们使用(Java)时,将顺序执行...想知道如何在rxjava中更好... 文档http://reactivex.io/intr.html说 很想知道是如何解决这个问题的。我从文件中发现很难理解。
在Java最近几个主要版本的每一次迭代中,似乎都有管理并发任务的新方法。 在Java9中,我们有Flow API,它类似于RxJava的Flowable API,但在Java9中,它有一组简单得多的类和接口。 Java 9 具有类似流API的类的完整包,即、、、,它们似乎做了类似的事情。 这两个库的主要区别是什么?为什么有人会使用Java9Flow库而不是更多样化的RxJava库,或者反之亦然?
本文向大家介绍Java和JavaScript之间的区别。,包括了Java和JavaScript之间的区别。的使用技巧和注意事项,需要的朋友参考一下 众所周知,Java和javascript都是编程语言,并在应用程序开发中使用。但是我们将在下面讨论的两种语言之间存在显着差异。 以下是Java和JavaScript之间的重要区别。 序号 键 爪哇 的JavaScript 1个 语言类型 JavaScr