storm为什么能实现流计算(Storm精华问答如何理解spout)
storm为什么能实现流计算(Storm精华问答如何理解spout)用zookeeper的zkCli.sh清理一下,直接重装了zookeeper。但是据说在storm0.6.1中已经解决了该bug。A:因为没有先killtopology,所以在启动nimbus时,zookeeper中依然保留了上次运行着的topology的信息,解决办法如下:2) 删除了配置中"storm.local.dir"的文件夹内的内容3) 启动storm nimbus系统报错,如何解决?
戳蓝字“CSDN云计算”关注我们哦!
Storm是Twitter开源的分布式实时大数据处理框架,被业界称为实时版Hadoop。随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍,比如网站统计、推荐系统、预警系统、金融系统等, 大数据实时处理解决方案的应用日趋广泛,目前已是分布式技术领域最新爆发点,而Storm更是流计算技术中的佼佼者和主流。
1
Q:在使用了storm一段时间后,需要重新部署storm的集群,主要是想将storm部署在其它机器上。做了以下错误操作:
1) 没有kill 正在运行的topology,kill nimbus和supervisor的storm进程
2) 删除了配置中"storm.local.dir"的文件夹内的内容
3) 启动storm nimbus
系统报错,如何解决?
A:因为没有先killtopology,所以在启动nimbus时,zookeeper中依然保留了上次运行着的topology的信息,解决办法如下:
用zookeeper的zkCli.sh清理一下,直接重装了zookeeper。但是据说在storm0.6.1中已经解决了该bug。
2
Q:在配置文件storm.yaml中,有:
# to nimbus
nimbus.childopts: "-Xmx1024m"
# to supervisor
supervisor.childopts: "-Xmx1024m"
# to worker
worker.childopts: "-Xmx768m"
那么,如何配置JVM参数呢?
A:如果worker在运行时,需要用指定的JVM参数,那么可以像这样配置:
worker.childopts: "-Dworker=worker -Xmx768m -Xdebug –Xnoagent-Djava.compiler=NONE-Xrunjdwp:transport=dt_socket address=8111 suspend=y server=y"
3
Q:如何理解spout/bolt的生命周期?
A:一般来说spout/bolt的生命周期如下:
1 、在提交了一个topology之后(在nimbus所在的机器) 创建spout/bolt实例(spout/bolt在storm中统称为component)并进行序列化;
2、将序列化的component发送给所有的任务所在的机器;
3、在每一个任务上反序列化component;
4、在开始执行任务之前 先执行component的初始化方法(bolt是prepare spout是open);
因此component的初始化操作应该在prepare/open方法中进行 而不是在实例化component的时候进行。
4
Q:如何将Storm与Spring框架集成?
A:在进行Storm与Spring集成时,需要对Storm的spout和bolt的生命周期按照上个问题那样理解清楚。这样的话就会知道,component的初始化操作应该在prepare/open方法中进行 而不是在实例化component的时候进行.按照这种说法进行改造,结构该问题消失了。但接下来可能会有新的问题:
Caused by: org.xml.sax.SAXParseException: Content is not allowedin prolog.
这个异常是由于*.xml文件编码的问题。原因是在从其他项目里或者编辑工具编辑时,在文件编码中加入了BOM头的原因,于是用notePad 打开xml文件选择去掉BOM头信息,重新进行保存即可。
5
Q“java.lang.NoClassDefFoundError: clojure.core.protocols$”故障如何解决?
A:故障的原因是因为jdk版本不匹配,安装虚拟机时系统会自带一个jdk.1.5.0。解决办法是检查JDK版本,卸载系统自带的JDK,使用自己安装的JDK版本。
#rpm –qa | grep java
# rpm –e –nodeps java-*
配置环境变量
vi /etc/profile
重新执行一遍即可。
小伙伴们冲鸭,后台留言区等着你!
关于Storm,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……
同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~
福利
1、扫描添加小编微信,备注“姓名 公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!
推荐阅读:
IEEE 回应禁止华为系审稿人;WiFi联盟、蓝牙联盟已恢复华为成员资格;中国计算机学会:暂时中止与IEEE通信学会合作……
ARM 发布新一代 CPU 和 GPU,实现 20% 性能提升!
前端开发 20 年变迁史
北漂杭漂的程序员,是如何买到第一套房子?
“爱装X”开源组织:“教科书级”AI知识树究竟长什么样?
500行Python代码打造刷脸考勤系统
权游播完了 你在骂烂尾 有人却悄悄解锁了新操作……
真香,朕在看了!