mbg*_*irp 10 java apache-storm
我正在使用java类向Storm集群提交拓扑,我还计划使用java类来终止拓扑.但是根据风暴文档,以下命令用于终止拓扑,并且没有Java方法(这有正当理由)
storm kill {stormname}
Run Code Online (Sandbox Code Playgroud)
那么从java类调用shell脚本来终止拓扑是否可以呢?什么是杀死拓扑的其他方法?
另外,如何获得在Storm集群中运行拓扑的状态?
Vis*_*ohn 17
要杀死拓扑,您可以尝试这样做
import backtype.storm.generated.KillOptions
import backtype.storm.generated.Nimbus.Client;
import backtype.storm.utils.NimbusClient
import backtype.storm.utils.Utils
Map conf = Utils.readStormConfig();
Client client = NimbusClient.getConfiguredClient(conf).getClient();
KillOptions killOpts = new KillOptions();
//killOpts.set_wait_secs(waitSeconds); // time to wait before killing
client.killTopologyWithOpts(topology_name, killOpts); //provide topology name
Run Code Online (Sandbox Code Playgroud)
获取拓扑运行的状态
Client client = NimbusClient.getConfiguredClient(conf).getClient();
List<TopologySummary> topologyList = client.getClusterInfo.get_topologies();
// loop through the list and check if the required topology name is present in the list
// if not it's not running
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6786 次 |
| 最近记录: |