提问者:小点点

Apache Storm和LMAX Disruptor之间的区别


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


共3个答案

匿名用户

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

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

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

匿名用户

可以说,storm是一种简化的高级API,它在内部使用LMAX disruptor,并具有其他良好的功能,如有保证的消息处理、确认、故障处理(机器级、工作级)、易于使用的分布式计算。

匿名用户

Storm使用干扰器http://www.michael-noll.com/blog/2013/06/21/understanding-storm-internal-message-buffers/

更多信息:http://en.wikipedia.org/wiki/Disruptor_(software_pattern)