原创 沒用過.gitignore還敢自稱高級開發?

Git是跟蹤項目中所有文件的好工具, 但是,您會希望在項目的整個生命週期中不要跟蹤某些文件及其變更。 系統文件(i.e. Mac系統的.Ds_Store) 應用程序配置文件(i.e. app.config, .env) 構建組件(i.e

原创 docker-compose搭建redis哨兵集羣

頭腦風暴 出於學習目的,您可以很輕鬆地在docker環境下運行redis的單個實例,但是如果您需要在生產環境中運行它,那麼必須將Redis部署爲HA(High Avaliable)模式。 Redis Sentinel爲Redis提供高可用

原创 [ASP.NET Core 3.1]瀏覽器嗅探解決部分瀏覽器丟失Cookie問題

今天的乾貨長驅直入,直奔主題 看了前文的同學們應該都知道,搜狗、360等瀏覽器在單點登錄中反覆重定向,最終失敗報錯。 原因在於,非Chrome80+瀏覽器不識別Cookie上的SameSite=none屬性值,導致認證Cookie在後續

原创 誰說docker-compose不能水平擴展容器、服務多實例?

❝ 雖說我已經從docker-compose走上了docker swarm的邪門歪道,目前被迫走在k8s這條康莊大道, 但是我還是喜歡docker-compose簡潔有效的部署方式。 ❞ 曾其何時 docker-compose非常適合開發、

原创 你不一定知道的UrlPrefix路由規則

引言 接上文,容器內web程序一般會綁定到http://0.0.0.0:{某監聽端口}或http://+:{某監聽端口},以確保使用容器IP可以訪問到web應用。 正如我們在ASP.NET Core官方鏡像顯示的,ASP.NET Core程

原创 (2)MongoDB副本集自動故障轉移全流程原理

前文我們搭建MongoDB三成員副本集,瞭解集羣基本特性,今天我們圍繞下圖聊一聊背後的細節。 默認搭建的replica set均在主節點讀寫,輔助節點冗餘部署,形成高可用和備份, 具備自動故障轉移的能力。 集羣心跳保活 集羣每個節點以週期

原创 (1)一文搭建並通識MongoDB replica set核心姿勢

副本集Replica Set是一個術語,定義具有多節點的數據庫集羣,這些節點具有主從複製(master-slave replication) 且節點之間實現了自動故障轉移。  這樣的結構通常需要具有奇數個成員的成員(無論是否帶有Arbite

原创 HTTP Strict Transport Security (HSTS) in ASP.NET Core

  本文是《9012年了,還不會Https》的後篇,本文着重聊一聊 HTTP Strict Transport Security協議的概念和應用。 啓用HTTPS還不夠安全   站點通過HTTPS 對外提供服務,用戶在訪問某站點,往往會直接

原创 修復搜狗、360等瀏覽器不識別SameSite=None 引起的單點登錄故障

臨近年關,諮詢師提出360,搜狗急速瀏覽器無法單點登錄到公司核心產品WD, 報重定向過多。 現象 經過測試, 出現單點登錄故障的是搜狗,360等主打雙核(默認Chrome內核)的瀏覽器, 較新式的Edge,Chrome,Firefox均沒有

原创 溫故知新,.NET 重定向深度分析

在早期的.NET Framework程序員心裏,重定向Redirect其實分爲兩種: Response.Redirect: Response對象的Redirect方法提供了一種實現客戶端重定向的方法 Server.Transfer:

原创 改善Azure App Service託管應用程序性能的幾個技巧

  本文介紹了幾個技巧,這些技巧可以改善Azure App Service託管應用程序的性能。其中一些技巧是你現在就可以進行的配置變更, 而其他技巧則可能需要對應用程序進行一些重新設計和重構。 開發者都希望從部署在Azure的App S

原创 EFCore連接池的坑 差點晚年不保

長話短說   上個月公司上線了一個物聯網數據科學項目,我主要負責前端接受物聯網事件,並提供 參數下載。 webapp 部署在Azure雲上,參數使用Azure SQL Server存儲。 最近從灰度測試轉向全量部署之後,日誌時常收到:  S

原创 MongoDB 快速掃盲貼

長話短說   經過996的歷練,開發者潛意識裏總是以object的視角看待事物, 現在某些數據庫也具備這樣的視角。 MongoDB是一個文檔型(類JSON 文檔)數據庫,相比傳統的關係型row/column模型,設計者認爲類JSON文檔是認

原创 【小作業】爲NLog自定義LayoutRenderer

長話短說   前文《解剖HttpClientFactory,自由擴展HttpMessageHandler》主要想講如何擴展HttpMessageHandler,  示例爲在每個Http請求中的日誌中顯示TraceId, 現在來完成課後的小作

原创 [引子]HttpClientFactory日誌不好用,自己擴展一個? 被忽略的TraceId,可以用起來了

前言   .NetCore2.1新推出HttpClientFactory工廠類, 替代了早期的HttpClient, 並新增了彈性Http調用機制 (集成Policy組件)。 替換的初衷還是簡單說下: ①  using(var clien