如何在故障转移期间恢复螺栓状态

use*_*851 5 apache-storm

我试图弄清楚如何在故障转移期间恢复风暴螺栓的状态.我可以在外部(DB或文件系统)保持状态,但是一旦重新启动bolt实例,我需要指向该bolt实例的特定状态来恢复它.螺栓的准备方法接收上下文,在此处记录http://nathanmarz.github.io/storm/doc/backtype/storm/task/TopologyContext.html

我不清楚的是 - 是否有任何一个这个上下文唯一标识特定的bolt实例,所以我可以理解指向哪个持久状态?故障转移期间是否保留了该ID?或者,是否可以为故障转移期间保留的特定bolt/instance设置任何变量/对象?任何帮助赞赏!

兄弟

PS新的stackoverflow所以请耐心等待...

use*_*864 0

您可能可以寻找Trident它基本上是建立在 Storm 之上的抽象。文档说

\n\n
\n

Trident 具有用于读取和写入有状态源的一流抽象。状态可以位于拓扑 \xe2\x80\x93 内部,例如保存在内存中并由 HDFS \xe2\x80\x93 支持,也可以外部存储在 Memcached 或 Cassandra 等数据库中

\n
\n\n

如果发生任何故障转移,它会说

\n\n
\n

Trident 以容错方式管理状态,以便在重试和失败时状态更新是幂等的。

\n
\n\n

您可以浏览文档以获取进一步的说明。

\n