storm使用中遇到的问题

1、异常:Caused by: java.util.jar.JarException:file:/...storm/supervisor/stormdist/testtest22-38-1408443230/stormjar.jarhas unsigned entries - 。。。

  at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:462)

   解决方法:maven中不打包

<dependency>

 <groupId>org.bouncycastle</groupId>
 <artifactId>bcprov-jdk16</artifactId>
 <version>1.40</version>
 <scope>provided</scope>
 </dependency>

将bcprov-jdk16-1.40.jar放入jre/ext/下面,原因是该包是签名jar,使用时不能修改。maven默认打包会解压jar。

2、flume遇到乱码停止    ,报异常:java.nio.charset.MalformedInputException:

     解决方法:flume配置文件加入 producer.sources.s.decodeErrorPolicy=IGNORE,忽略错误数据。默认是FAIL,抛异常报错,flume会停止。

 

3、flume中读取的一条记录长度超过2048字符,也就是4096字节就会截断记录

   解决方法:flume配置文件加入producer.sources.s.deserializer=LINE   producer.sources.s.deserializer.maxLineLength=65535。

 

4、storm日志报错:s.k.PartitionManager [INFO] Skippingfailed tuple at offset=40590727 because it's more than maxOffsetBehind=100000behind _emittedToOffset=4071485

解决方法:kafkaConfig.maxOffsetBehind=Long.MAX_VALUE;

参考:http://qnalist.com/questions/5005701/0-9-2-incubating-kafka-spout-setting-to-latest-offset

 

5、storm报OOM的错误,总结了相关需要设置的内存参数,以及增大任务的并行度,spout的获取数据速度。

 

 drpc.childopts-Xmx2048m
 nimbus.childopts: "-Xmx4096m"
 supervisor.childopts: "-Xmx4096m"
 worker.childopts: "-Xmx2048m"

6、java.lang.RuntimeException:net.sf.json.JSONException: java.lang.IllegalArgumentException: Cannot invokecom.。。。.setM on bean class 'classcom.xxx' -

 java.lang.ClassCastException@3cb15770- had objects of type "[Ljava.lang.String;" but expected signature"java.lang.String"

 

是json2.4的一个bug,参考 https://github.com/aalmiray/Json-lib/issues/14。期望返回string时,如果返回的string是个json,当做对象处理了。

目前解决方法是在storm代码里捕获一下。

 

7、flume 异常停止,不报错,数据不处理。

原因:flume正在读的文件不能修改(数据追加,重命名文件等),用cp的方式会导致这个问题。

解决方法:文件拷贝到此目录后不处理,重命名文件后再处理。

10、worker自动重启,ui 上fail数量较多。

解决方法:bolt逻辑为写本地文件,代码逻辑中return之前要emit该event。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值