Apache storm 如何合并特定于Storm组件的配置数据?

Apache storm 如何合并特定于Storm组件的配置数据?,apache-storm,Apache Storm,我有一个包含喷口/螺栓的风暴拓扑。 有一些特定于特定喷口和喷嘴的配置数据 还有一个我想使用的特殊螺栓,即从配置文件中读取 所以它不是硬编码的。配置数据的示例是 喷口是用来读取的,一个文件名是用来写入的。 我认为配置数据被传递到open和prepare方法中 如何合并配置文件中特定于组件的数据?至少有两种方法: 1在Storm config中包括特定于应用程序的配置,该配置将在IBolt.prepare ISpout.open方法调用期间可用。您可以使用的一种策略是为配置键设置应用程序前缀,以避免

我有一个包含喷口/螺栓的风暴拓扑。 有一些特定于特定喷口和喷嘴的配置数据 还有一个我想使用的特殊螺栓,即从配置文件中读取 所以它不是硬编码的。配置数据的示例是 喷口是用来读取的,一个文件名是用来写入的。 我认为配置数据被传递到open和prepare方法中


如何合并配置文件中特定于组件的数据?

至少有两种方法:

1在Storm config中包括特定于应用程序的配置,该配置将在IBolt.prepare ISpout.open方法调用期间可用。您可以使用的一种策略是为配置键设置应用程序前缀,以避免潜在的冲突

Config conf = new backtype.storm.Config();    
// Storm-specific configuration
// ...
// ..
// .

conf.put("my.application.configuration.foo", "foo");
conf.put("my.application.configuration.bar", "foo");

StormSubmitter.submitTopology(topologyName, conf, topology);
2包括喷口/螺栓施工期间的部件配置

Properties properties = new java.util.Properties();
properties.load(new FileReader("config-file"));

BaseComponent bolt = new MyBoltImpl(properties);