滑動窗口在監(jiān)控和統(tǒng)計應(yīng)用的場景比較廣泛,比如每隔一段時間(10s)統(tǒng)計最近30s的請求量或者異常次數(shù),根據(jù)請求或者異常次數(shù)采取相應(yīng)措施。在storm1.0版本之前,沒有提供關(guān)于滑動窗口的實(shí)現(xiàn),需要開發(fā)者自己實(shí)現(xiàn)滑動窗口的功能(storm1.0以前實(shí)現(xiàn)滑動窗口的實(shí)現(xiàn)原理可以自行百度)。
原文和作者一起討論:http://www.cnblogs.com/intsmaze/p/6481588.html
微信:intsmaze
這里主要演示在storm1.0以后如何通過繼承storm1.0提供的類來快速開發(fā)出窗口滑動的功能。窗口可以從時間或數(shù)量上來劃分,由如下兩個因素決定:窗口的長度,可以是時間間隔或Tuple數(shù)量;滑動間隔(sliding Interval),可以是時間間隔或Tuple數(shù)量。比如:每兩秒統(tǒng)計最近6秒的請求數(shù)量;每接收2個Tuple就統(tǒng)計最近接收的6個Tuple的平均值......。