更好的java并发框架/抽象

时间:2014-07-24 09:16:36

标签: java multithreading data-analysis fork-join

Java 5及以上版本的并发性肯定比处理原始线程更好的抽象。

关于fork-and-join和内存数据结构(如并行数组)的讨论,我真的很感动。不幸的是,Java 7遗留下来的是fork-and-join和错过数据结构。

想知道是否有类似且经过良好测试的框架/抽象来有效地为庞大的数据集进行聚合。

2 个答案:

答案 0 :(得分:0)

我真的认为你应该看看RxJava:https://github.com/Netflix/RxJava/wiki

“它扩展了观察者模式以支持数据/事件序列,并添加了允许您以声明方式组合序列的运算符,同时抽象出对诸如低级线程,同步,线程安全,并发数据之类的事物的关注结构和非阻塞I / O. “

...

“很难使用Futures来最佳地组合条件异步执行流程(或者不可能,因为每个请求的延迟在运行时会有所不同)。当然,这可以做到,但很快就会变得复杂(因此很容易出错)或者它过早地阻止Future.get(),消除了异步执行的好处

另一方面,RxJava Observable用于编写流和异步数据序列。

答案 1 :(得分:0)

尽管有RxJava,@ user1500191提及,但我可以添加Akka作为您的另一个选项。

  

Akka是一个工具包和运行时,用于在JVM上构建高度并发,分布式和容错的事件驱动的应用程序。