Storm Bolt之定时机制Tick应用

本文介绍Storm中的内置定时机制StormBolt之Tick,可通过自定义配置设置ticktuple的时间间隔。Bolt收到ticktuple后可根据业务需求执行特定任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       Storm中有一种内置的定时机制Storm Bolt之Tick,可以在任何bolt的task每个一定时间(支持通过用户自定义配置)收到来自System Id的tick tuple。Bolt在收到这样的tuple后,根据业务需求完成相应的处理流程。

     在构建topology时,调用addConfiguration()方法,完成对tick时间间隔的设置,如下:

public static void main(String[] args) throws Exception {
        //开始组合bolt和spout的组件
        TopologyBuilder builder = new TopologyBuilder();
        builder.setSpout("Test_Spout", new TestSpout(TopoLoad.getKafkaSpoutConfig()), conf.getInt(SPOUT_PARALLELISN_HINT_INT));
        builder.setBolt("Test_Bolt", new TestBolt(), 4).localOrShuffleGrouping("Test_Spout")
        .addConfiguration(TOPOLOGY_TICK_TUPLE_FREQ_SECS,10);
}

 在具体的Bolt中,用户的Bolt需要继承BaseRichBolt/BaseBasicBolt,在Bolt中重写getComponentConfiguration()方法,设置tick时间间隔。并在bolt的execute(Tuple tuple)方法中调用TupleUtils.isTick(input)判断tuple是否为tick tuple,相应进行业务处理。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值