apache-storm - Apache Storm 和 LMAX Disruptor 的区别

标签 apache-storm disruptor-pattern

Apache Storm 和 LMAX Disruptor 之间的对比差异是什么?两者都在解决不同的问题吗?如果有,它们是什么?我学习了 Apache Storm 几天,发现它与 LMAX Disruptor 有一些相似之处。尽管 LMAX Disruptor 用于在线程之间传递消息,但对数据进行某些处理的事件被链接在一起(如树、菱形、三角形、简单序列)。类似地,Storm 的 Spouts 与多个 Bolts 链接在一起,这些 Bolts 对数据执行一些处理,数据从一个 Bolt 传递到另一个 Bolt,直到没有更多的 Bolt。这与 LMAX Disruptor 不相似还是我看错了?除此之外,Apache Storm 是否也可以像 LMAX Disruptor 一样在海量数据上执行得更快?

最佳答案

Disruptor 是用于在线程 之间传递消息的高性能数据结构。

Apache Storm 用于在进程(可能在不同的物理机器上)之间传递消息。

他们试图解决根本不同的问题,线程间消息传递 -v- 进程间消息传递。

关于apache-storm - Apache Storm 和 LMAX Disruptor 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29141536/

相关文章:

hadoop - apache storm 是否允许处理存储在 HDFS 上的大量文件?

streaming - 有状态和无状态流处理

apache-storm - 如何监控 Bolt 的待处理队列的大小?

c# - LMAX Disruptor 可以移植到 C# 吗?

python - 如何在保留矩阵维度的同时序列化 numpy 数组?

java - 如何处理 OffsetOutOfRangeException 错误?

java - 用单线程写 LMAX

java - 监控 LMAX Disruptor

java - 在Java Servlet中使用disruptor并处理多个事件

java - 为什么 Java lmax Disruptor 在通过 EventProcessors 传递事件时有很大的延迟?