通过Apache Storm的螺栓传递输出字段

时间:2016-06-23 13:42:07

标签: java apache-storm

在我的Bolt(扩展BaseBasicBolt)的函数var User = function(name, email) { this.name = name; this.email = email; }; module.exports = User; 中,是否有一种简单的方法来声明我从前一个Bolt或Spout收到的相同字段?

2 个答案:

答案 0 :(得分:1)

没有。这是不可能的。

Spouts和Bolt基本上完全解耦,只在组装拓扑时才连接。因此,每个Spout / Bolt必须独立于其输入,定义输出模式。

答案 1 :(得分:0)

我找到了一种处理这个问题的有趣方法。请注意,这个解决方案并不能真正匹配我的问题,因为正如马蒂亚斯萨克斯解释的那样,我想要做的事情对风暴指南规则来说并不方便。

我最后做的是我在我的螺栓的构造函数中询问字段。这样我想要通过我的螺栓传递的字段在我的拓扑中给出。这使得螺栓的使用者可以更好地控制进出螺栓的内容。

我认为这比试图像镜子一样传递所有内容更为重要。