Storm概念学习系列之并行度与如何提高storm的并行度
不多说,直接上干货!
对于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数目控制实现
Storm概念学习系列之并行度与如何提高storm的并行度的更多相关文章
- Storm概念学习系列之Worker、Task、Executor三者之间的关系
不多说,直接上干货! Worker.Task.Executor三者之间的关系 Storm集群中的一个物理节点启动一个或者多个Worker进程,集群的Topology都是通过这些Worker进程运行的. ...
- Storm概念学习系列之storm的雪崩
不多说,直接上干货! Storm的雪崩问题的解决办法1: Storm概念学习系列之并行度与如何提高storm的并行度 Storm的雪崩问题的解决办法2:
- Storm概念学习系列之核心概念(Tuple、Spout、Blot、Stream、Stream Grouping、Worker、Task、Executor、Topology)(博主推荐)
不多说,直接上干货! 以下都是非常重要的storm概念知识. (Tuple元组数据载体 .Spout数据源.Blot消息处理者.Stream消息流 和 Stream Grouping 消息流组.Wor ...
- Storm概念学习系列之storm流程图
把stream当做一列火车, tuple当做车厢,spout当做始发站,bolt当做是中间站点!!! 见 Storm概念学习系列之Spout数据源 Storm概念学习系列之Topology拓扑 Sto ...
- Storm概念学习系列之什么是实时流计算?
不多说,直接上干货! 什么是实时流计算? 1.实时流计算背景 2.实时计算应用场景 3.实时计算处理流程 4.实时计算框架 什么是实时流计算? 所谓实时流计算,就是近几年由于数据得到广泛应用之后 ...
- Storm概念学习系列之事务
不多说,直接上干货! 事务 这里的事务是专门针对Topology提出来的,是为了解决元组在处理失败重新发送后的一系列问题的.简而言之,事务拓扑(transactional topology)就是指St ...
- Storm概念学习系列之storm-starter项目(完整版)(博主推荐)
不多说,直接上干货! 这是书籍<从零开始学Storm>赵必厦 2014年出版的配套代码! storm-starter项目包含使用storm的各种各样的例子.项目托管在GitHub上面,其网 ...
- Storm概念学习系列 之数据流模型、Storm数据流模型
不多说,直接上干货! 数据流模型 数据流模型是由数据流.数据处理任务.数据节点.数据处理任务实例等构成的一种数据模型.本节将介绍的数据流模型如图1所示. 分布式流处理系统由多个数据处理节点(node) ...
- Storm概念学习系列之Stream消息流 和 Stream Grouping 消息流组
不多说,直接上干货! Stream消息流是Storm中最关键的抽象,是一个没有边界的Tuple序列. Stream Grouping 消息流组是用来定义一个流如何分配到Tuple到Bolt. Stre ...
随机推荐
- hdu-5781 ATM Mechine(dp+概率期望)
题目链接: ATM Mechine Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Other ...
- PC样式reset参考
/* html5doctor.com Reset Stylesheet */ * { padding:; margin:; list-style: none; } html, body, div, s ...
- 机器视觉 之 Gabor Feature
在机器视觉中,gabor feature是一种比较常见的特征,因为其可以很好地模拟人类的视觉冲击响应而被广泛应用于图像处理, gabor feature 一般是通过对图像与gabor filter做卷 ...
- 高性能MySQL之【第十六章MySQL用户工具】学习记录
接口工具: Msql Workbench http://www.mysql.com/products/workbench SQLyog http://www.webyog.c ...
- bzoj3456城市规划 多项式取模
題目大意 求出有n个点的有标号简单连通无向图的数目. 题解 什么破玩意,直接输出\(2^{C_n^2}\)走人 我们发现这张图要求连通,而上式肯定不能保证连通. 其实上式表示的是不保证连通的有标号简单 ...
- jQuery 验证 Validation
jQuery Validation 目录 简介: Form validation made easy. Validate a simple comment form with inline rules ...
- 五 Vue学习 首页学习 (上)
首页: http://localhost:8002/#/, 登录页面如下: index.js文件中如下的路由配置,转过去看login.vue是如何实现的. const routes = [ { ...
- JS编写简易计算器
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/html"> <head lang=" ...
- Spring入门第十课
Spring表达式语言:SpEL Spring表达式语言(简称SpEL)是一个支持运行时查询和操作对象图的强大的表达式语言. 语法类似于EL:SpEL使用#{...}作为定界符,所有在大括号中的字符都 ...
- 基于Go实现的秒杀系统
这是基于Go语言的一个秒杀系统,这个系统分三层,接入层.逻辑层.管理层.项目源码:https://github.com/BlueSimle/SecKill 系统架构图 秒杀接入层 从Etcd中加载秒杀 ...