![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Storm
文章平均质量分 79
William_Yun
这个作者很懒,什么都没留下…
展开
-
Storm架构分析
一、Storm总体架构 客户端提交Topology代码到Nimbus。Nimbus针对该Topology建立本地的目录,Nimbus中的调度器根据Topology的配置计算Task,并把Task分配到不同的Worker上,调度的结果写入Zookeeper中。Zookeeper上创建assignments节点,存储Task和Supervisor中Worker的对应关系。在Zookeep原创 2016-03-19 13:01:28 · 309 阅读 · 1 评论 -
Worker内部工作原理
Worker、Executor、Task 三者的关系 storm集群中的一台机器可能运行着一个或者多个worker进程,其从属于一个或者多个topology。一个worker进程运行着多个executor线程;每一个worker从属于一个topology;executor是单线程,每一个executor运行着相同组件(spout或者bolt)的1个或者多个task;1个task执行(sp原创 2016-03-19 13:04:58 · 1835 阅读 · 0 评论 -
Storm集群部署
搭建一个Storm集群需要依次完成的安装步骤: 搭建Zookeeper集群;安装Storm依赖库 (Java 1.7x版本、Python 2.6.x版本);下载并解压Storm发布版本 (0.10.0版本);修改storm.yaml配置文件;启动Storm各个后台进程。 storm.yaml 配置 Storm发行版本解压目录下有一个conf/storm.yaml文件,原创 2016-03-19 13:08:29 · 297 阅读 · 0 评论 -
Ack 框架分析
Ack介绍 每个Spout Tuple保存一个ack-val的校验值,它的初始值是0,然后每发射一个Tuple或者ack一个Tuple,Tuple的ID都要跟这个校验值异或一下,并把得到的值更新为ack-val的新值。 如果每个发射出去的Tuple都被ack了,最后ack-val一定是0(因为一个数字跟自己异或得到的值是0)。如果ack-val为0,表示这个Tuple树就被完整处理过原创 2016-03-19 15:17:53 · 915 阅读 · 2 评论