微服務的360度運行狀況檢查的評審模板
- 2019 年 11 月 8 日
- 筆記
庫
- 那裡有多少個未使用的庫?
- 有沒有可用Spring附帶的功能替換的庫?
連接池
- 如何處理並發?
延遲
- 該應用需要多長時間才能啟動?
- 使用rsockets和https時,高負載下的數據傳輸速度是否存在有意義的差異?
- 使用Reactive技術堆棧與傳統技術堆棧時,數據傳輸速度是否存在有意義的差異?
- HTTP調用效率低下是否存在值得注意的地方?
- 該應用程式的網路通話的平均響應時間是多少?
記憶體/ CPU
- 應用程式在高負載下會使用多少記憶體?是否需要JVM GC調優?
- 應用程式在高負載下使用多少個執行緒?
- 最高約束是什麼?(CPU,記憶體,磁碟,網路等)
錯誤/異常處理
- 該應用通常在高負載下會拋出多少個異常?
- 兩次故障之間的平均時間是多少?
- 中斷通常持續多長時間?
程式碼複雜度/清潔度
- 應用程式中最高的圈複雜度是什麼?
- 應用程式中有多少個未使用的類?
- 應用程式中有多少種未使用的方法?
- 遵守15個因素?
https://cloud.rohitkelapure.com/2017/10/pushing-zero-factor-apps-to-cloud.html
- 高頻程式碼更改熱圖
- 一次1生產事故回顧
springboot
- 是否有Classpath依賴項膨脹?
- 升級到s-boot 2.2並可能產生依賴關係?
彈性
- 斷路器和HTTPClient是否配置正確
- 斷路器的度量值是否通過千分尺放置在消防水帶中
- 故障模式分析。
可觀察性
- 應用程式是否以正確的級別記錄
- 應用程式是否以正確的級別發出指標
- spring-cloud-sleuth是否啟用了分散式跟蹤?
- 在中配置 http 應用程式的運行狀況檢查 Cloud Foundry
性能
- 應用程式啟動時間是否可以接受?這可以減少嗎?
- 在下游依賴項的上下文中了解自動縮放行為嗎?
- 自動縮放的策略
高層架構審查
- 該應用程式中的技術債務在哪裡
- 這個應用程式是微服務嗎?沿6個維度進行評估
https://content.pivotal.io/blog/should-that-be-a-microservice-keep-these-six-factors-in-mind
- 未來路線圖審查
作者:banq 來源:https://www.jdon.com/53360