1

我想为 apache heron 编写一些自定义调度程序,并且我正在深入研究源代码。我注意到在苍鹭源代码中有几个具有相似类的包。例如backtype.storm&中的大多数类org.apache.storm都是相似的(完全相似,因此内部代码相同)。这两个包之间也有一些相似的类com.twitter.heron(例如com.twitter.heron.api.tuple.Fields),但其中一些在内部有不同的代码(例如 Fields 类)。我知道在编写拓扑时,我们可以导入我们想要的每个包,我们可以在其中任何一个之间进行选择,但我很好奇它们之间的差异以及它们为什么将所有这些包放在一起。并没有合并它们?如果风暴类是编写拓扑的唯一选择,那么什么是类com.twitter.heron包好用吗?

我知道 heron 被设计为与storm完全向后兼容,这可能是因为向后兼容问题,但我不得不承认这让我很困惑,因为我需要在这些类中编写自己的代码,而我不知道如何选择哪一个,哪个是开发人员不断开发和维护的,我应该选择它们作为修改的候选者。

提前致谢。

4

1 回答 1

1

基于此处开发人员团队的描述:

不建议使用 heron api 类 - 因为我们可能会经常更改它们。它们仅供内部使用。

backtype.storm 是如果您的应用程序想要使用 pre-storm 1.0.0。对于 1.0.0 后的应用程序,您应该使用 org.apache.storm

于 2016-11-12T08:49:47.550 回答