ASP.NET Core 網站應用程式如何設定健康檢查

ASP.NET Core 提供了健康檢查的 Middleware,可以讓我們很輕鬆的知道應用程式目前的本身的狀態以及應用程式所依賴其他服務的狀態;也可以讓容器協調器進行重新啟動容器或是暫停服務,比如 K8s 的 Liveness、Readiness

令人驚喜的是 AspNetCore.HealthChecks.UI 提供 UI / Alert 讓監視系統變得更有效率了

...繼續閱讀 »

如何使用 DI Container for Microsoft.Extensions.DependencyInjection

Microsoft.Extensions.DependencyInjection 是微軟實作的 DI Container,在 ASP.NET Core 大量的使用,無形之間已經成為一種開發標準,過去,還沒有使用 DI Container 時,我會使用靜態屬性來集中管理物件的生命週期,現在,集中管理物件的生命週期,我又多了一個選擇。

Microsoft.Extensions.DependencyInjection 支援 .NET Fx 4.6.1 以上

...繼續閱讀 »

[ASP.NET] 使用 Request 傳遞參數

ASP.NET 的 Request 物件的生命週期很短,只會出現在一個 Http Request,當需要跨物件傳遞資料時,比如 HttpModule、HttpHandler、Page 、Controller,可以善用 Request 物件來存放短暫的狀態。

既然可以傳遞物件,那麼我們也可以在 Request 初始化的時候,將所需要的物件注入至 Request 裡面,然後再到到 Page / Controller 取出來用;在不同的專案範本可以使用的 Request 物件都不太一樣,接下來分享我已經知道的寫法。

...繼續閱讀 »

如何使用 Web 前端技術開發桌面應用程式 WinForm + CefSharp + Chromium - 起手式

CEF 的全名是 Chromium Embedded Framework,是用於嵌入 Chromium 瀏覽器的簡單框架,用 C++/CLI 開發

CefSharp 是在 .NET 平台封裝了 CEF,可以使用 C# / VB 語言開發

Winform 桌面應用程式要做出酷炫的畫面門檻相當的高,反觀當前的網頁技術發展的相當蓬勃,酷炫的畫面相當的多,CefSharp 可以讓我們嵌入 Chromium,輕鬆的使用前端技術,UI 的開發團隊,只要完成一個設計就可以同時給桌面應用程式和網站使用。

前端語言怎麼跟 C# 溝通?JavaScript + Handler 直接整合 C#  或者 JavaScript + Web API OWIN,這兩種方式都可以

 

...繼續閱讀 »

[AppMetrics] 如何在 ASP.NET Core 3.1 使用 AppMetrics 收集應用程式中的性能指標

AppMetrics 是一款 Open Source 跨平台的 .NET 的 Library,支援了 .NET Core 和 .NET 4.5.2,前面幾篇提到用 Telegraf 收集作業系統的性能指標,涵蓋整個作業系統,粒度大;當指標粒度要更精準則可以考慮用 AppMetrics 收集更細微的資訊。

範例提供了 ASP.NET Core 3.1、ASP.NET Core 2.2 | .NET4.8、Console Application 4.8、ASP.NET Web API 4.5.2 OWIN、Console Application 4.5.2

.NET Core 文件
https://www.app-metrics.io/


.NET 4.5.2 文件
https://alhardy.github.io/app-metrics-docs/

...繼續閱讀 »

[Grafana] 如何安裝及配置 Grafara Dashboard

系統上線之後,你怎麼知道系統的資源還剩多少?服務有沒有活著?

Grafana 是一個用來呈現服務狀態的監視、預警通知軟體;有需多漂亮的圖表跟編排,也支援了很多 TSDB(Time Series Database)資料庫,當系統資源不足的時候用 Email、Slack 通知相關人員,相關人員分析後做的決策就會比較精準

...繼續閱讀 »