Apache Storm:监督程序终止并重新启动工作进程
创始人
2024-09-05 00:00:32
0

以下是一个使用Apache Storm监控和重新启动工作进程的示例代码:

import org.apache.storm.Config;
import org.apache.storm.LocalCluster;
import org.apache.storm.generated.StormTopology;
import org.apache.storm.topology.TopologyBuilder;

public class StormSupervisorRestartExample {
    public static void main(String[] args) throws InterruptedException {
        // 创建TopologyBuilder对象
        TopologyBuilder builder = new TopologyBuilder();
        
        // 添加spout和bolt到TopologyBuilder中
        builder.setSpout("spout", new MySpout());
        builder.setBolt("bolt", new MyBolt()).shuffleGrouping("spout");
        
        // 创建Storm配置对象
        Config config = new Config();
        config.setDebug(true);
        
        // 创建本地集群对象并提交Topology
        LocalCluster cluster = new LocalCluster();
        cluster.submitTopology("my-topology", config, builder.createTopology());
        
        // 监听Supervisor是否终止
        while (!cluster.isSupervisorDaemonAlive()) {
            Thread.sleep(1000);
        }
        
        // 停止Topology
        cluster.killTopology("my-topology");
        
        // 等待一段时间后重新启动Topology
        Thread.sleep(5000);
        cluster.submitTopology("my-topology", config, builder.createTopology());
        
        // 关闭本地集群
        cluster.shutdown();
    }
}

在上面的示例代码中,我们首先创建了一个TopologyBuilder对象,并添加了一个spout和一个bolt。然后,我们创建了一个Storm配置对象,并设置了调试模式。接下来,我们创建了一个本地集群对象并提交了Topology。

然后,我们使用cluster.isSupervisorDaemonAlive()方法来监控Supervisor是否终止。一旦Supervisor终止,我们使用cluster.killTopology()方法停止Topology。然后,我们等待一段时间后重新启动Topology,再次使用cluster.submitTopology()方法。

最后,我们关闭本地集群对象。

请注意,这只是一个示例代码,具体的实现可能因环境和需求而有所不同。

相关内容

热门资讯

一次性透视!aapoker破解... 一次性透视!aapoker破解侠是真的“推荐开挂辅助器”1、aapoker破解侠是真的系统规律教程、...
第一次性发现!指尖四川辅助脚本... 第一次性发现!指尖四川辅助脚本“解谜开挂辅助插件”亲,关键说明,指尖四川辅助脚本赛季回归,指尖四川辅...
六次性领会!指尖四川辅助脚本视... 六次性领会!指尖四川辅助脚本视频“揭幕开挂辅助教程”1、上手简单,内置详细流程视频教学,新手小白可以...
9次性普及!掌电竞技辅助器“解... 9次性普及!掌电竞技辅助器“解密开挂辅助插件”一、掌电竞技辅助器AI软件牌型概率发牌机制”必胜“技巧...
第8次性掌握!赣牌圈修改器“推... 第8次性掌握!赣牌圈修改器“推荐开挂辅助app”1、上手简单,内置详细流程视频教学,新手小白可以快速...
三次性了解!大菠萝789辅助“... 三次性了解!大菠萝789辅助“解迷开挂辅助神器”1、首先打开大菠萝789辅助最新版本,在大菠萝789...
第二次性私人局!欢聚水鱼神器“... 第二次性私人局!欢聚水鱼神器“曝光开挂辅助器”1、超多福利:超高返利,海量正版游戏,欢聚水鱼神器系统...
3次性理解!闲逸辅助软件“专业... 3次性理解!闲逸辅助软件“专业开挂辅助插件”闲逸辅助软件辅助器中分为三种模型:闲逸辅助软件软件透明挂...
第五次性掌握!皮皮游戏辅助工具... 第五次性掌握!皮皮游戏辅助工具“揭露开挂辅助教程”在进入皮皮游戏辅助工具辅助挂后,参与本局比赛的八名...
1次性晓得!沧海十三水私人局辅... 1次性晓得!沧海十三水私人局辅助器“分享开挂辅助器”沧海十三水私人局辅助器是一种具有地方特色的麻将游...