框架內的服務模型(ServiceModel)用於處理各種業務邏輯(如最簡單的CRUD操做),在設計時以相似於僞代碼的形式存在,發佈時後端會經過Roslyn轉換並編譯爲運行時代碼。爲了方便開發者做者初步實現了在線調試服務與監測服務調用性能的功能,下面分別介紹。node
本來想參照VSCode實現調試功能,但VSCode使用的vsdbg調試器有許可限制,沒法用於第三方IDE,好在GitHub上的netcoredbg項目使用MIT許可且支持VSCode的調試協議。做者畫了個流程圖簡要說明一下調試流程:
git
VSCode調試協議參考:程序員
- 目前僅實現了經過鼠標定位變量查看相應值;
- 還沒有實現查看虛擬實體類及其成員的值。
做爲一名程序員,系統性能優化是一場持久戰,目標是追求用更少的資源來知足系統的運行要求。做者在設計之初就定下了整個架構必須包含完整的系統監控功能,以方便快速定位系統瓶頸。所以做者在服務端的服務實例容器內埋了監測點(Pormetheus的Histogram指標類型),用以監測服務實例的調用次數與響應時間。集羣內的Prometheus節點按期採集與存儲監測指標,經過運維管理系統的「服務監控」面板(以下圖所示)能夠查看某一時間範圍內服務調用次數與耗時的排名,這樣程序員就能夠重點分析與優化這些服務模型的代碼。
github
運維管理系統由框架自己實現,入口爲http://地址:5000/opsjson
本篇介紹瞭如何實現IDE的服務模型調試與性能監測功能,GitHub上的運行時已更新可供測試。一邊碼代碼一邊碼文實屬不易,做者須要您的支持請您多多點贊推薦!後端