Hadoop能够进行大批量数据的离线处理,但是在实时计算上的表现实在是不尽如人意;而Storm就可以担当这部分的角色,今天,就让我们看看关于Storm的精华问答吧。
Q:发布topology到远程集群时,出现AlreadyAliveException(msg: xxx is alreadyactive)异常。
A:故障原因是因为提供的topology 与已经在运行的topology 重名。解决方法是在发布时换一个拓扑名称即可。
Q:启动Supervisor 时,出现java.lang.UnsatisfiedLinkError:
A:故障原因是未找到zmq 动态链接库。
解决方法1:配置环境变量 export LD_LIBRARY_PATH=/usr/local/lib
解决方法2:编辑/etc/ld.so.conf 文件,增加一行:/usr/local/lib。再执行
sudo ldconfig 命令,重启Supervisor。
Q:发布topologies 时,出现不能序列化log4j.Logger 的异常。
A:故障原因是日志系统无法正确支付序列化。解决方法的方式是使用slf4j 代替log4j。
Q:bolt 在处理消息时,worker 的日志中出现Failing message
A:故障原因可能是因为Topology 的消息处理超时所致。解决方法为提交Topology 时设置适当的消息超时时间,比默认消息超时时间(30秒)更长。比如:
Q:在打包toplogy工程的时候, 如果采用assembly方式,对于相关的依赖的配置一般要这样的Xml代码:
A: wiki上说可以用<scope>compile</scope>。然后将storm依赖设置为runtime,貌似不行。 另外就是所有的依赖包将全部解压,然后将所有依赖的配置和class文件生成一个文件。这个是通过<unpack>true</unpack>参数来控制的。
小伙伴们冲鸭,后台留言区等着你!
关于Storm,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……
同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~
福利
1、扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!
2、公众号后台回复:白皮书,获取IDC最新数据白皮书整理资料!
推荐阅读: