原创 前端快閃三:多環境靈活配置react

你已經使用Create React App腳手架搭建了React應用,現在該部署了。 一般會使用npm run build或者yarn build構建出靜態資源, 由web服務器承載。 您會體驗到 多環境:test、staging、prod

原创 大前端快閃二:react開發模式 一鍵啓動多個服務

最近全權負責了一個前後端分離的web項目,前端使用create-react-app, 後端使用golang做的api服務。 npx create-react-app my-app cd my-app npm start 歘歘歘,就搭建了

原创 大前端快閃:package.json文件知多少?

最近在公司某項目參與了一些前端工作,作爲後端摳腳大漢,改點前端細節磕磕絆絆,改點大前端、工程化、HTTP交互倒也還能做到柳暗花明。 於是打算用後端程序猿的視角記錄一些{大前端}的知識快閃,也算是幫助讀者構建完整的全棧技能體系。 快閃一:

原创 多線程環境下,程序運行真是危機四伏

姿勢在不斷的更新迭代, 太捲了。 你管這也叫線程安全? 最近大意了,竟然想將《面試官:實現一個帶值變更通知能力的Dictionary》一文中的臨界鎖只應用到寫操作。 內心旁白: 讀操作又不會修改數據,無論是新值還是舊值,反正能讀到。

原创 【值類型作爲函數形參,形參被修改,不影響原值】 不怎麼正確。

C# 值類型作爲函數形參,形參被修改,不影響原值。 這是我們在初始學習編程時需要記住的內容,我們也是一直這樣踐行的。 先說結論:這是不準確的。 爲什麼提出這樣看似很淺顯的問題,是因爲有次我在使用ArraySegment<byte>值類型時

原创 面試官: 你平時用過讀寫鎖嗎?

前情提要 同程藝龍基礎架構部推出的數據獲取組件DAL.Connection,我們要做到在切換連接配置時清空數據庫連接池, 這就涉及到切換連接的時候,觸發變更通知。 .NET 如何清空連接池? 面試官:實現一個帶值變更通知能力的Dictio

原创 ASP.NET Core端點路由中三種讓人困惑的路由函數

早先提及了端點路由app.UseEndpoints, 端點路由強調的是端點和 路由,其核心目的是將 請求落地點與路由尋址方式解耦。 這裏面有幾個容易混淆的函數 MapControllerRoute MapDefaultControlle

原创 面試官:實現一個帶值變更通知能力的Dictionary

如題, 你知道字典KEY對應的Value什麼時候被覆蓋了嗎?今天我們聊這個剛性需求。 前文提要: 數據獲取組件維護了業務方所有(在用)的連接對象,DBA能在後臺無侵入的切換備份庫。 上文中:DBA在爲某個配置字符串切換新的連接信息時,S

原创 你認爲的.NET數據庫連接池,真的是全部嗎?

一般我們的項目中會使用1到2個數據庫連接配置,同程藝龍的數據庫連接配置被收攏到統一的配置中心,由DBA統一配置和維護,業務方通過某個字符串配置拿到的是Connection對象。 DBA能在對業務方無侵入的情況下,給業務方切換備份數據庫,之

原创 共享內存 & Actor併發模型哪個更快?

HI,前幾天被.NET圈紀檢委@懶得勤快問到共享內存和Actor併發模型哪個速度更快。 前文傳送門: 說實在,我內心10w頭羊駝跑過...... 先說結論 首先兩者對於併發的風格模型不一樣。 共享內存利用多核CPU的優勢,使用強一

原创 3分鐘總覽微軟TPL並行編程庫

有小夥伴問我每天忽悠的TPL是什麼?☹️ 這次站位高一點,嚴肅講一講。 引言 俗話說,不想開飛機的程序員不是一名好爸爸;作爲微軟技術棧的老鳥,一直將代碼整潔之道奉爲經典, 優秀的程序員將優雅、高性能的代碼看成自己的臉面。 今天探討下我對

原创 三分鐘掌握共享內存 & Actor併發模型

喫點好的,很有必要。今天介紹常見的兩種併發模型: 共享內存&Actor 共享內存 面向對象編程中,萬物都是對象,數據+行爲=對象; 多核時代,可並行多個線程,但是受限於資源對象,線程之間存在對共享內存的搶佔/等待,實質是多線程調用對象的

原创 雲原生系統 之 彈性模式

大綱: 雲原生系統的彈性模式resiliency pattern 1.1 服務故障的雪崩效應 1.2 迴應之前雲原生 --彈性-- 疑問? 彈性模式: 作用在下游請求消息上 短期中斷的響應碼 Polly經典策略 Golang 斷路器模

原创 難纏的布隆過濾器,這次終於通透了

今天來聊一聊面試八股文:布隆過濾器。 說道布隆過濾器,就免不了說到緩存穿透。 緩存穿透 在高併發下,查詢一個並不存在的值時,緩存不會被命中,導致大量請求直接落到數據庫。 數據庫的響應能力肯定沒有緩存大,出線這樣的情況,一般是黑客攻擊,拖

原创 C# 位圖BitArray 小試牛刀

前面聊了布隆過濾器,迴歸認識一下位圖BitMap,閱讀前文的同學應該發現了布隆過濾器本身就是基於位圖,是位圖的一種改進。 位圖 先看一個問題, 假如有1千萬個整數,整數範圍在1到1億之間,如何快速確定某個整數是否在這個1千萬個整數中呢? 乍