iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 24
1

9.1 監控

在前面,己經將 Router、Queue、Dispatch 的組合,視為一個個體。為了方便後面的描述,使用 Node 稱呼。

https://ithelp.ithome.com.tw/upload/images/20191011/201075519XWNwNMREu.png

接著,試著修改架構,以符合需求的項目。

需求一:記錄 log 資訊,以便觀察、分析使用情況與追逐問題。

首先想到的作法,就是在 Node 外部,加一個 Logger ,負責處理 Log 的相關事務。

  • Logger 只單純處理從 Router、Queue、Dispatch 內部傳回的資訊,無對外關係。

https://ithelp.ithome.com.tw/upload/images/20191011/201075516wv22BlZ8V.png

需求二:可以定期回報系統的資訊,例如:己處理數量、等待中的數量…

加入一個Monitor 元件,負責定期撈取 Node 內部的特定資訊。其回報方式,可以使用 Log 的方式,也可以通過不同的協定,將資料傳到外界。

https://ithelp.ithome.com.tw/upload/images/20191011/201075516h5orrA2sT.png

需求三、可設定水位,當系統負擔大過特定水位時,主動發出通知。

設定水位,最直接的做法,當然利用 Configuration 的方式,進行水位的設定。再增加 Monitor 的功能,讓該模組可以發送訊息的外部的通知系統,例如:email、slack 等等。

https://ithelp.ithome.com.tw/upload/images/20191011/20107551GJcLETIHb6.png


上一篇
九、需求與框架規劃(1)
下一篇
九、需求與框架規劃(3) - 軔性 Resilience
系列文
從零開始土炮MQ30

尚未有邦友留言

立即登入留言