例如,假设您使用storm来聚合Web访问开始和结束日期。会话从用户的第一次访问开始,并在该同一用户不活动30分钟后结束。这些数据在收集时实时流入风暴。在30分钟不活动后,您如何告诉风暴发出数据?
答案 0 :(得分:2)
我不确定但你可以在风暴中寻找TOPOLOGY_TICK_TUPLE_FREQ_SECS
属性。如this article
Tick元组:通常需要一个螺栓以固定的间隔“做某事”,比如刷新写入数据库。许多人一直在使用ClockSpout的变体发送这些滴答。 ClockSpout的问题在于您无法将螺栓内的刻度需求内部化,因此如果您忘记在拓扑中正确设置螺栓,它将无法正常工作。 0.8.0引入了一个新的“tick tuple”配置,允许你通过“topology.tick.tuple.freq.secs”组件特定的配置指定你想要接收tick元组的频率,然后你的bolt会收到一个来自__system组件的元组和该频率的__tick流。
您还可以找到示例代码来配置spouts或bolt以接收具有特定间隔的tick元组。