答案 0 :(得分:0)
Storm 0.9.3引入了multilang子进程心跳。 (实际上我介绍了它。)
正如您所知,灵气和主管检查工作人员的心跳,并在工人没有及时写出心跳时采取适当的行动。
Multilang子进程心跳正在做类似的事情,但它使用multilang协议而不是ZK。
在0.9.3之前,sync()仅用于ShellSpout以通知子进程next()的执行已完成。在0.9.3之后,Storm为sync(),#34; heartbeat"添加了新的含义。 (意思是通知我没关系。)
ShellSpout不发送心跳元组,导致正常情况Spout的nextTuple()被频繁调用,subprocess的next()也是如此。 ShellBolt每1秒发送一次心跳元组到子进程。
希望这有帮助。