分享

请问一下是否有遇到过所有的bolt都发送ack,但是SPOUT确认为失败的情况?

qyd100 发表于 2015-4-16 14:37:31 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 3 26039
从UI上看,SPOUT上的正常的消息数没有变化,失败的消息一直在增加
程序一直在正常运行中

1.jpg

在代码方面由于每个execute都是使用anchoring方式,所以每个bolt的execute都有ACK的操作
而且看了各个BOLT的日志,没有发现任何的错误打印,

问题:
1,这种现象出现的原因可能存在哪几种?
2,如果遇到这种情况,需要排查哪些地方?
3,有什么日志可以定位这种问题?字节bolt的日志没有错误打印


谢谢!




已有(3)人评论

跳转到指定楼层
s060403072 发表于 2015-4-16 15:37:16


个人观点仅供参考:
对于storm是允许spout发送消息失败的,storm对于失败的消息,会再次发送。这是storm保证消息不丢失的机制。
至于为什么会如此多的failed,可能网络原因,可能内存原因,总之发送失败了,storm还会尝试,这个并不是错误。所以楼主看不到错误应该是正常的。


回复

使用道具 举报

一个好人 发表于 2016-6-27 09:57:41
s060403072 发表于 2015-4-16 15:37
个人观点仅供参考:
对于storm是允许spout发送消息失败的,storm对于失败的消息,会再次发送。这是sto ...

你的意思是可以不用管spout failed?我很纳闷儿,我的storm一直在接收kafka中的数据(一直都有数据),spout Acked值不变,但spout Emitted却一直增大!bolt接收spout Emitted过来的值,bolt的Executed值在一直增大。我想问为什么spout的Acked值一直不变呢?
回复

使用道具 举报

一个好人 发表于 2016-6-27 10:12:23
朋友,你的这个问题解决了吗?如果解决了能否告知我一下该问题怎么解决的,万分感谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条