JStorm/Storm的调试:本地运行模式

       最近正在学习使用JStorm,写了一个Topology,将程序打成jar包,提交到JStorm集群运行,但是并没有输出结果,反复检查代码,还是查不出错误,而且每次改正代码之后,都要重新打成jar,上传到集群,很不方便。忽然想到Hadoop有本地运行模式,非常方便调试,于是开始查阅相关资料,一下是我的一些学习成果。


Storm运行模式:

  • 本地模式(Local Mode): 即Topology运行在本地机器的单一JVM上,这个模式主要用来开发、调试。
  • 远程模式(Remote Mode):在这个模式,我们把我们的Topology提交到集群,在这个模式中,Storm的所有组件都是线程安全的,因为它们都会运行在不同的Jvm或物理机器上,这个模式就是正式的生产模式。
实例:
  • 创建一个MAVEN工程:

  • 修改pom.xm添加依赖包

  • Spout

  • Bolt

  • Topology

        这里有两种运行模式可以选择:cluster和Local,当我们直接Run As->Java Application的时候,就是采用的本地运行模式。
        
        本地模式在一个进程里面模拟一个storm集群的所有功能, 这对开发和测试来说非常方便。以本地模式运行Topology跟在集群上运行Topology类似。要创建一个进程内“集群”,使用LocalCluster对象就可以了。然后可以通过LocalCluster对象的submitTopology方法来提交Topology, 效果和StormSubmitter对应的方法是一样的。submitTopology方法需要三个参数: Topology的名字, Topology的配置以及Topology对象本身。你可以通过killTopology方法来终止一个topology, 它需要一个topology名字作为参数。
要关闭一个本地集群,简单调用:
cluster.shutdown();
就可以了。


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值