負載壓力測試工具 - K6

K6 是一套用 JavaScript 編寫測試腳本的工具,對於前端的開發夥伴可是相當的友善,Jetbrains IDE 也有整合它,在開發/測試體驗上肯定有一定的水準,為此深得我心,於是便快速的調查一番,紀錄使用心得

...繼續閱讀 »

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

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

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

...繼續閱讀 »

如何使用 Swagger/OpenAPI Specification + Prism 建立基於合約的 Mock Server

在介接其他人寫的 Web API 時,可以透過 Mock Server 來模擬對方會回傳的資料,比如說 json-server,但這樣往往會因為兩造之間沒有一個合約、規範,各自實作,導致最後在整合的時落差太大;理論上,雙方基於合約、規範,進行開發,最後在整合的時候應該有問題的狀況應該會小一點,Prism 是套基於 Swagger/OpenAPI Specification 的 Mock Server,在 OpenAPI 的生態系裡面算是蠻完整的解決方案之一,接下來,是我對它在使用上的小小心得。

...繼續閱讀 »

如何使用 Swagger / OpenAPI Specification 先行的開發流程

以往,在 ASP.NET Fx / ASP.NET Core 我會先寫好 Controller(Server Code) 再搭配 NSwag、Swashbuckle.AspCore 產生 Swagger / OpenAPI Specification Doc,一旦要修改它(Spec.)就必須要重新編譯專案,只是要改文件的錯字,也沒有動到 Server Code 的邏輯,卻要重新 Build Server,幾次下來發現這樣似乎不是很聰明。也常常發生過於關注 Server Code 忽略 Specification ,導致兩邊跟不一致。

現在,我先寫 Specification,然後再透過它產生 Controller (Server Code) 讓 Specification 不再強制依賴 Server Code,解除強依賴關係,編寫規範時再也不需要重新建置專案,目前運作起來挺順暢的,接下來,我分享我是怎麼做的

...繼續閱讀 »

如何使用 AWS S3 (MinIO) 模擬器進行本地端應用程式開發

  • 2014
  • 0
  • AWS
  • 2023-01-17

若我們直接存取雲端資源,將面臨到帳單的問題;若隔離雲端資源,那隔離的成本將會大大的增加,也不利於整合測試,因此有很多的開源專案模擬出了這些網路服務,只要在本地開發環境安裝模擬器,就可以盡情的享受開發的樂趣,大大的降低雲端費用,好好地善用它們吧,搜尋關鍵字 AWS S3 Simulation/Emulation、Local S3,就可以找到不少資源。

...繼續閱讀 »

如何使用 Razor Engine 腳本處理 Template

Razor Engine 是一種 .NET 腳本語言和引擎,主要是為文本範本開發,這跟我們在寫 ASP.NET MVC Razor 語法是一樣的,現在我想要透過 Razor 來定義 Template,透過 Data Binding 產生各種不同的結果。在調查有哪些 Razor 套件可以在 .NET 6 下運行且可以完整支援 Razor  語法,最後我選用 RazorTemplating,他骨子裡面則是使用 Razor Class Library

...繼續閱讀 »