不多说,直接上干货!

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

    

  

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

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

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

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

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

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

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

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

  程序怎么来实现,见我下面的博客

Storm编程入门API系列之Storm的Topology默认Workers、默认executors和默认tasks数目

Storm编程入门API系列之Storm的Topology多个Workers数目控制实现

Storm编程入门API系列之Storm的Topology多个Executors数目控制实现

Storm编程入门API系列之Storm的Topology多个tasks数目控制实现

转载于:https://www.cnblogs.com/zlslch/p/7247412.html

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

  1. Storm概念学习系列之storm-starter项目(完整版)(博主推荐)

    这是书籍<从零开始学Storm>赵必厦 2014年出版的配套代码! storm-starter项目包含使用storm的各种各样的例子.项目托管在GitHub上面,其网址为: http:// ...

  2. Storm概念学习系列之Topology拓扑

    不多说,直接上干货!   Hadoop 上运行的是 MapReduce 作业,而在 Storm 上运行的是拓扑 Topology,这两者之间是非常不同的.一个关键的区别是:一个MapReduce 作业 ...

  3. Storm概念学习系列之Stream消息流 和 Stream Grouping 消息流组

    不多说,直接上干货! Stream消息流是Storm中最关键的抽象,是一个没有边界的Tuple序列. Stream Grouping 消息流组是用来定义一个流如何分配到Tuple到Bolt. Stre ...

  4. Storm概念学习系列之storm的特性

    不多说,直接上干货! storm的特性 Storm 是一个开源的分布式实时计算系统,可以简单.可靠地处理大量的数据流. Storm支持水平扩展,具有高容错性,保证每个消息都会得到处理,而且处理速度很快 ...

  5. Storm概念学习系列之Task任务

    每一个Spout/Bolt的线程称为一个Task. Task任务 Task是运行Spout或Bolt的单元,每一个Spout/Bolt的线程称为一个Task. 在Storm 0.8及之后的版本中,Ta ...

  6. Zookeeper概念学习系列之分布式事务

    不多说,直接上干货! 初学者来说,肯定会有这么一个疑问.为什么会在zookeeper里牵扯到分布式事务? zookeeper到底是什么? zookeeper实际上是yahoo开发的,用于分布式中一致性 ...

  7. Hadoop HDFS概念学习系列之熟练掌握HDFS的Shell访问(十五)

    调用文件系统(FS)Shell命令应使用 $HADOOP_HOME/bin/hadoop fs  *** 的形式!!! 所有的FS Shell命令使用URI路径作为参数. URI格式是scheme:/ ...

  8. Beam概念学习系列之Pipeline 数据处理流水线

    不多说,直接上干货! Pipeline 数据处理流水线 Pipeline将Source PCollection ParDo.Sink组织在一起形成了一个完整的数据处理的过程. Beam概念学习系列之P ...

  9. storm java开发环境搭建,看这里!Storm【单机版】环境搭建

    Storm单机版本环境搭建 1. 安装环境要求 you need to install Storm's dependencies on Nimbus and the worker machines. ...

  10. 基于Storm流计算天猫双十一作战室项目实战(Storm Kafka HBase )

    基于Storm流计算天猫双十一作战室项目实战(Storm Kafka HBase Highchats) 网盘地址:https://pan.baidu.com/s/18Hd94BmSDGSeZRRA-M ...

最新文章

  1. ls和find命令查找的一些小技巧
  2. Unix进程和线程管理及其异同
  3. 利用ESP8266测量模块来设计远距离反射式光电检测 : ITR8307
  4. python调试网页_Python Django shell 调试
  5. 网狐棋牌(十) 成也萧何败也肖何? IUnknowEx
  6. 通过邮箱远程控制电脑
  7. Linux常用开发环境软件-redis安装
  8. mysql数据库应用的权限层级_MySQL数据库的用户权限管理
  9. 面试官 | count(1)、count(*) 、count(列名) 有什么区别?
  10. SPOJ COT Count on a tree(主席树+倍增lca)
  11. 【c++leetcode】判断一个数是否是2的幂、3的幂、4的幂
  12. 关于getX()getY()就可以获取到位置,找不到方法问题
  13. Hibernate:二级缓存
  14. 几台服务器做虚拟化,4台服务器虚拟化教程(多台服务器虚拟成一台)
  15. EXCEL:如何设置某一列不能修改
  16. SpringBoot中的配置文件详解(yml、properties全局配置和自定义配置、@ConfigurationProperties与@Vuale使用、有趣的banner图配置)
  17. 马王堆汉墓帛书‧老子——乙本释文(道经)
  18. Android8-Settings-BlueTooth
  19. Metasploit上使用RPC方式复现一个Linux提权漏洞
  20. 理解性能的奥秘——应用程序中慢,SSMS中快(4)——收集解决参数嗅探问题的信息

热门文章

  1. Foxmail配置IMAP账号
  2. shell 数组详解
  3. SQL2005学习(三十二),Group by
  4. CakePHP 2.x CookBook 中文版 第三章 入门(三)
  5. 开源C++项目Google JavaScript引擎V8挑战实录,带你进入V8之旅
  6. 新加用户被保护的解决办法
  7. 分布式业务Redis安装与集群配置
  8. stooge sort
  9. list()的相关问题
  10. POJ-2762 Going from u to v or from v to u?