码迷,mamicode.com
首页 > 其他好文 > 详细

Storm启动流程分析

时间:2017-05-20 11:19:19      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:提交   wordcount   create   序列化   orm   export   tor   序列   配置   

Storm启动流程分析

1、客户端运行storm nimbus时,会调用storm的python脚本,该脚本中为每个命令编写了一个方法,每个方法都可以生成一条相应的Java命令。

命令格式:java -server xxx.ClassName  -args

nimbus--->Running:/export/servers/jdk/bin/java  -server  backtype.storm.daemon.nimbus

supervisor--->Running:/export/servers/jdk/bin/java  -server  backtype.storm.daemon.supervisor

2、nimbus启动之后,接受客户端提交任务

命令格式:storm jar xxx.jar  xxx.驱动类  参数

Running:/export/servers/jdk/bin/java  -client  -Dstorm.jar=/export/servers/storm/examples/storm-master/storm-master-topologies-0.9.5.jar  org.apache.storm.starter.WordCountTopology  wordcount-2017-5-20

该命令会执行storm-starter-topologies-0.9.5.jar中的storm-starter-topologies-0.9.5.jar的main方法,main方法中会执行以下代码:

StormSubmitter.submitTopology("mywordcount",config,topologyBuilder.createTopology());

topologyBuilder.createTopology(),会将程序员编写的spout对象和bolt对象进行序列化。

会将用户的jar上传到nimbus物理节点的/export/data/storm/workdir/nimbus/inbox目录下。并且改名,改名的规则是添加了一个UUID字符串。

在nimbus物理节点的/export/data/storm/workdir/nimbus/stormdist目录下。有当前正在运行的topology的jar包和配置文件,序列化对象文件。

3、接收到任务之后,会将任务进行分配,分配会产生一个assignment对象,该对象会保存到Zookeeper中,目录是/storm/assignments,该目录只保存正在运行的topology任务。

 


 

 

Storm启动流程分析

标签:提交   wordcount   create   序列化   orm   export   tor   序列   配置   

原文地址:http://www.cnblogs.com/ahu-lichang/p/6881506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!