且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Storm概念学习系列之并行度与如何提高storm的并行度

更新时间:2022-09-11 21:47:40

Storm概念学习系列之并行度与如何提高storm的并行度

 

  对于storm来说,并行度的概念非常重要!大家一定要好好理解和消化。

    

  

  storm的并行度,可以简单的理解为多线程。

 


如何提高storm的并行度?
storm程序主要由spout和bolt组成的。spout和bolt在运行期间会生成task实例(new Spout或者new bolt)。

  那这些task实例是需要在线程(executor)里面运行的,而线程是需要在进程(worker)里面执行的。

 Storm概念学习系列之并行度与如何提高storm的并行度

 

 

 

 

Storm概念学习系列之并行度与如何提高storm的并行度

  这些,都是可以在代码中控制的到。

 

 

 Storm概念学习系列之并行度与如何提高storm的并行度

 

 

 

 

 

 

 Storm概念学习系列之并行度与如何提高storm的并行度

 

 

 

 

 

Storm概念学习系列之并行度与如何提高storm的并行度

 

 

 

 

 

1、所以想要提高storm的处理能力,最直接的就是提高executor线程的并行度。

2、提高worker的数量有什么好处呢?
可以间接提高storm的处理能力,因为一个worker进程的处理能力是有限的,如果线程太多了,是需要使用多个进程的,否则,多线程的效率也不高。

  假设一个进程里面运行10个线程效率最高,如果你把100个线程都在一个进程里面运行。

3、提高task的数量有什么好处呢?
因为线程内部不能并行处理,所以就算提高线程内部的task的数量,也不能提高storm的并行度。
它的好处是,可以方便后期执行storm的rebalance(弹性计算)
【因为当一个storm程序提交之后,这个程序中的task数目就不会再变了】

 

 

 

 

 

 

 

 

 

 

 

 

 

Storm概念学习系列之并行度与如何提高storm的并行度


本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/7247412.html,如需转载请自行联系原作者