Apache storm Apache Storm和LMAX Disruptor之间的区别

Apache storm Apache Storm和LMAX Disruptor之间的区别,apache-storm,disruptor-pattern,Apache Storm,Disruptor Pattern,Apache Storm和LMAX Disruptor之间有什么截然不同的区别?两者都在一起解决不同的问题吗?如果是,它们是什么?几天来,我一直在学习ApacheStorm,我发现它与LMAX Disruptor有一些相似之处。尽管LMAX中断器用于在线程之间传递消息,但对数据进行某些处理的事件被链接在一起(如树、菱形、三角形、简单序列)。类似地,风暴的喷口由多个螺栓链接,这些螺栓对数据执行一些处理,数据从一个螺栓传递到另一个螺栓,直到没有更多螺栓为止。这与LMAX干扰器不相似,还是我看错了?除

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

Storm使用Disruptor

详情如下:
中断器是一种高性能的数据结构,用于在线程之间传递消息

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


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

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

这是不正确的,因为Storm使用Disruptor进行员工内部通信。我认为我的答案仍然有效。即使Storm利用破坏者来实现其目标,他们也针对不同的问题空间,从而相应地针对他们的API。disruptor实现中没有用于处理网络的内容,它纯粹是关于线程间消息传递的。您在评论中说的是对的,但下面是一个最好的误导:“Apache Storm用于在进程之间传递消息(可能在不同的物理机上)。”这只是它的一部分功能,事实上,另一部分确实使用了干扰器。