NimbusServer相当于hadoop里的JobTracker或yarn里的ResourceManager,在集群中属于首脑地位,负责分发任务,监控集群状态,与supervisor的通信主要通过Zookeeper。nimbus在启动过程中会做以下工作,以保证集群稳定运行:
1、清理无效topology
2、建立zk连接并创建相应znode
3、启动监控线程
4、启动httpserver...
分类:
Web程序 时间:
2015-01-13 15:58:30
阅读次数:
403
不要把第三方jar包放到容器的lib中,把容器不提供的第三方jar打包到项目中,容器提供的jar就不打包到jar包中。项目运行时,会先检测项目本身打入的jar包,然后再去容器的lib下面寻找jar包。 为什么不建议把第三方...
分类:
编程语言 时间:
2015-01-08 20:17:56
阅读次数:
354
该项目分析了目前主流分布式通讯相关开源产品中使用的No Schema序列化产品Kryo,Fastjson,Hessian的序列化机制,通过构造相对比较复杂的数据model,针对序列化size,序列化时间进行了细致测试。通过测试报告可以清晰的看出Kryo无疑是大赢家,无论是序列化大小,还是速度上都更胜一筹,这也就不难理解为什么Spark,Storm等流计算框架会选它作为序列化工具。另外,可以看出这三款软件在BitSet,EnumSet等特殊类型的序列化上还有不少问题,作者也给Kryo,Fastjson社区提了...
分类:
其他好文 时间:
2015-01-07 18:49:57
阅读次数:
151
Storm Trident的核心数据模型是一批一批被处理的“流”,“流”在集群的分区在集群的节点上,对“流”的操作也是并行的在每个分区上进行。Trident有五种对“流”的操作:1.不需要网络传输的本地批次运算2.需要网络传输的“重分布”操作,不改变数据的内容3.聚合操作,网络传输是该操作的一部分4...
分类:
其他好文 时间:
2015-01-07 16:32:30
阅读次数:
304
对于No output fields defined for component:stream XxxBolt:null异常代码调用堆栈的分析过程...
分类:
其他好文 时间:
2015-01-07 13:14:40
阅读次数:
1336
Storm保证每跳离开spout的消息都会被完全处理。本文介绍Storm是怎么保证每条消息都被完全处理并且作为用户该怎么做才能从Storm的可靠性保证受益。1、什么叫消息被完全处理? 一个tuple从spout出发可以触发成千上万个tuples基于它。 一个tuple被认为处理失败了,如果它的消.....
分类:
其他好文 时间:
2015-01-06 17:19:16
阅读次数:
117
本文介绍Storm容错的设计细节。1、当一个worker进程死了会发生什么? 当worker死了,supervisor会重启它。如果它尝试开启多次失败并且不能与nimbus发送心跳,Nimbus会重新设计worker到另外一台机器上。2、一个结点死了会发生什么? 分派到这台机器上的任务将会超时并.....
分类:
其他好文 时间:
2015-01-06 17:13:18
阅读次数:
117
1、是什么构成一个可运行的topology? worker processes(worker进程),executors(线程)和tasks。 一台Storm集群里面的机器可能运行一个或多个worker进程,一个worker进程运行一个特定topology的executors。 一个worker...
分类:
其他好文 时间:
2015-01-06 15:27:01
阅读次数:
153
1.启动nimbus nohup ./storm nimbus & 2.启动supervisor nohup ./storm supervisor & 3.启动ui nohup ./storm ui & 4.启动log nohup ./storm log & 5.上传topo storm/storm-0.9.0.1/bin/storm jar storm_topo.jar...
分类:
其他好文 时间:
2015-01-06 12:14:08
阅读次数:
370
storm运行异常之No output fields defined for component:stream XxxBolt:null的可能原因...
分类:
其他好文 时间:
2015-01-05 18:45:02
阅读次数:
200