原创 [原創]dotnet 命令行工具解決方案 PomeloCli

目錄PomeloCli 是什麼爲什麼實現太多的工具太少的規範基於二進制拷貝分發難以爲繼快速開始1. 引用 PomeloCli 開發命令行應用2. 引用 PomeloCli 開發命令行插件開發命令行插件搭建私有 nuget 服務發佈命令行插件

原创 單元測試佈道之二:在全新的 DDD 架構上進行單元測試

目錄回顧dotnet 單元測試相關的工具和知識可測試性不確定性/未決行爲依賴於實現:不可 mock複雜繼承/高耦合代碼:測試困難實戰:在全新的 DDD 架構上進行單元測試需求-迭代1:分支管理前期:分析調用時序前期:設計模塊與依賴關係前期:

原创 單元測試佈道之一:定義、分類與策略

目錄在開始之前什麼是單元測試測試的分類單元測試的定義單元測試與其他測試的區別單元測試的必要性測試金字塔代碼的可測試性未決行爲/非確定性直接依賴於實現全局變量/單例模式靜態方法/函數複雜繼承高耦合代碼私有方法單元測試策略單元測試誤區部分參考

原创 jenkins 構建 job 並獲取其狀態的實現

目錄BACKGROUNDINVESTIGATION I1. 連續觸發的相同 job 構建不會重複入隊2. 連續觸發的不同 job 構建會各自入隊3. 參數變動的相同 job 構建將分別入隊4. 允許同時觸發構建將有數據錯亂的可能5. 分佈式

原创 jenkins 插件亂碼處理與文件上傳

2020/9/28 同事反饋使用插件 https://github.com/jenkinsci/pipeline-model-definition-plugin 組織請求 Information on extending/integrati

原创 更優雅的配置:docker/運維/業務中的環境變量

目錄docker-compose環境變量.env 文件env_filedocker stack不支持基於文件的環境變量envsubstenvsubst.py1. 使用行內鍵值對2. 忽略環境變量3. 使用基於文件的環境變量4. 使用文本內容

原创 部署倉庫中 nginx 下游依賴配置改進

在我們基於 docker stack 部署的應用中,nginx 有以下功能 作爲前端唯一入口,通過 80 端口暴露服務 通過 proxy_pass,將特定的前綴的請求轉發到其他服務 /api -> xxxx /doc -> xxxx /

原创 dotnet core 在 MIPS 下的移值進度

本文仍處於修訂中 寫在開始前 我們的主要業務基於 dotnet core 2.x 與 3.1 完成,目前 dotnet core 3.1 支持的 CPU 架構列表中還不包含龍芯,且在 gitlab issue 中表示官方當前沒有對 MI

原创 tmux 編譯安裝過程

本文是在龍芯上進行 tmux 編譯,其中涉及的工具可能是平臺相關的. 按照 tmux 文檔進行編譯 git clone https://github.com/tmux/tmux.git cd tmux sh autogen.sh ./con

原创 關於若干性能指標的闡述

目錄 應用程序性能指標 響應時長 併發數 吞吐量 如何提升應用的響應能力 儘可能地壓縮響應時長 設置合理的併發數量 在開始之前必須說明,本文力圖簡單的描述而非學院派解釋。 應用程序性能指標 一般地說,單一指標無法勾畫出整體水

原创 各數據源的時間/日期的提取能力對比

目錄 時間/日期的提取能力對比 Postgres now(), current_timestamp extract date_part/date_trunc Oracle sysdate, current_timestamp ext

原创 遠程服務異常處理的實踐之一:客戶端

目錄 HTTP 狀態碼 服務端各不相同 客戶端差異巨大 WebClient HttpWebRequest RestSharp HttpClient HttpClientFactory 隨着純單體項目的逐漸減少,遠程服務調用失敗

原创 Oracle 原生驅動帶來的精度問題的分析與解決

問題 Oracle 官方提供了 dotnet core 驅動,但我們在使用中遇到了精度問題。 復現 以下代碼運行數學運算 1/3,無論是 OracleCommand.ExecuteScalar() 還是 OracleDataReader.G

原创 Microsoft.Extensions.DependencyInjection 之一:解析實現

[TOC] 前言 項目使用了 Microsoft.Extensions.DependencyInjection 2.x 版本,遇到第2次請求時非常高的內存佔用情況,於是作了調查,本文對 3.0 版本仍然適用。 先說結論,可以轉到Servi

原创 Microsoft.Extensions.DependencyInjection 之三:反射可以一戰(附源代碼)

目錄 前文回顧 IServiceCallSite CallSiteFactory ServiceProviderEngine CompiledServiceProviderEngine DynamicServiceProviderEn