订单单量监控v2
前段時間做了一個訂單單量監控的項目,已經投入使用了,現在總結一下
前期的想法參考這篇文章
整體使用了storm實時計算框架和redis數據庫,還有kafka消息隊列
先上效果圖,我們可以后期將數據展示出來,明顯發現某天00點有單量突變的情況,明顯是促銷活動導致單量增加了
而后面的報警也是證實了,單量的非正常變化,確實可以報警出來,最起碼的效果是有了
先簡單說下整體思路,后面再講詳細實現
1.在頁面下單成功的地方跨域調用一次kafka的服務,每成功一單就調一次
2.kafka的服務接到這次調用,發送kafka消息
3.storm服務實時接收這個kafka消息,將消息作為數據源,開始下面的計算
4.引入時間窗口的概念,引入定時器的概念,每隔固定時間統計前一段時間內的單量
5.拿這段時間內的訂單量和存在redis中的預測數據對比,是否報警
5.將這段時間的單量,結合預測算法,計算出下一段時間內的預測值,保存在redis中
6.最后echarts展示redis的數據,并定時刷新
詳細實現:
1.有人會有疑問,為什么要在頁面發送跨域請求?
跨域請求相關知識點,可以參考我的這篇文章jsonp跨域
2.
總結
- 上一篇: 数据库缓存双写一致性的一些个人想法
- 下一篇: [记录] --- safari浏览器对于