太棒啦,恭喜大家跟著我一起堅持到了最後一天,在過去 29 天裡,我們從最底層的 Netty 非同步 I/O 引擎切入,經歷了網路延遲混沌工程、Resilienc...
在前面的文章中,我們完成了微服務上 K8s、滾動更新雙探針與 HPA 自動擴充。然而,當我們準備將這套系統推向真實 Production 生產環境時,我們必須確...
昨天我們剖析了 K8s 3-Node 叢集在 Service 與 kube-proxy 轉發下的網路開銷。今天,我們要來測試 k8s HPA (Horizont...
前兩天我們成功將非同步 S3 微服務部署至 Minikube K8s 叢集,並設定了Liveness/Readiness 雙探針實現了 0% 錯誤率的無感發佈,...
昨天我們學習了高可用性(High Availability, HA)核心思維,並在本地建立好了 Minikube 測試叢集與 kubectl 命令列工具。 今天...
昨天我們成功撰寫了 Deployment 與 Service YAML 檔,將非同步 S3 微服務部署至 Minikube 叢集,並親眼驗證了當 Pod 被殺掉...
昨天我們深入剖析了 Timeout 設定與容量規劃的數學公式,證明了盲目放寬 Timeout 只會讓連線池乾涸。 今天,我們要將壓力測試的視角從PUT上傳轉向l...
前幾天我們利用Docker完成了非同步 S3 微服務的容器化、架設了 Prometheus + Grafana 監控鏈路,並透過 JMeter 壓測驗證有無保護...
前幾天我們完成了微服務容器化(Docker)、Prometheus/Grafana 監控服務建立、破除長 Timeout 迷思、並透過壓力測試驗證了listOb...
本篇由 AI 協作整理。 內容整理自 a11y-moda 的開發與驗收經驗,由作者與 Codex 協作編排,發布前由作者確認。協作模式見 Day 01。 如...
昨天我們成功在 JMeter 上傳併發測試中,證明了前面寫的保護api的功能將 3 秒超時引發的錯誤率從 53% 降至 0%,並透過 Grafana 發現真正的...
昨天我們成功運用 Docker Compose 建立App 微服務 + Prometheus + Grafana 的全套監控服務 現在,我們的容器不再是黑盒子了...
昨天我們成功運用多階段建置(Multi-stage Build)技術,將非同步 S3 微服務打包成僅有 500MB 的極輕量 Docker 容器,並在獨立隔離的...
我們從一開始的三高指標與同步/非同步引擎對決,一路升級到分散式環境下的防禦機制(Semaphore 背壓限流、Double-Check 、uploadId 冪等...
昨天我們完成了 Double-Check Pattern 的實作,當 putObject 發生 timeout 時,後端不再直接回傳失敗,而是使用 headOb...
在前兩篇中,我們在本地開發環境裡,利用了 simulateScenario 在代碼內部模擬超時,驗證了自我修復確實可以起死回生,手把手完成了微服務的三層防禦盾牌...
昨天我們說明了網路世界最殘酷的一面。當微服務呼叫 AWS S3 上傳檔案時,如果發生 TimeoutException時不能直接斷言上傳一定失敗,也有可能是上傳...
昨天我們用 JMeter 與 JConsole 進行了本地端的第一波大壓測,親眼見證了非同步 Netty 在面對高併發流量時,如何以極其穩定的執行緒表現,不過在...
前幾天我們完成了本地端非同步模型的底層修煉,對非同步與 Event Loop 機制有了紮實的理解。接著再開始用 Java 21 與 Netty 非同步 HTTP...
昨天我們親眼見證了同步連線的慘況:當大量併發請求湧入時,少量的執行緒會因為等待 I/O 而卡死(執行緒飢餓);但如果無腦加開成千上萬個執行緒,又會讓伺服器記憶體...
前幾天的單機壓測中,目睹了伺服器在極限流量下崩潰的瞬間。不論如何優化Netty的Event Loop,當請求像海嘯般湧入時,記憶體指標依然無情地飆升,最終迎來O...
昨天我們用餐廳的比喻了解了同步與非同步的差異。今天,我們要會透過程式碼,重現傳統同步連線在面對併發請求時,伺服器會面對哪些問題 為了專注於觀察底層行為,我們今天...
前兩天我們聊了系統設計的思維,以及高併發情境下(如演唱會搶票)伺服器連線池被榨乾的慘況。今天,我們終於要切入正題,來面對那個讓無數後端工程師頭痛的高併發下伺服器...
在實作之前,我們必須先釐清真實世界的系統到底長什麼樣子。回想以前自己寫些小專案時,只要資料庫寫得進去、畫面出得來就好。但在真實的商業環境裡,不同類型的服務面臨著...
為什麼明明在本地端跑都好好的,為什麼一上線就炸了? 剛踏入軟體工程師這個領域滿一年,這句話大概是我在心裡吶喊過最多次的一句話。以前在學校做專題或實驗時,專案...
一個 AI agent 送出 PR,測試有跑,描述也寫了,diff 看起來還算乾淨。 然後 reviewer 還是把它退掉。 這件事一點都不矛盾。真實工程流程不...
如果一個檔案會改變 agent 怎麼讀你的 repo、怎麼下手改 code、怎麼判斷任務完成,這個檔案就已經不是提示詞備忘錄了。 它是基礎設施。 這件事一開始很...
很多團隊導入 AI coding agent 時,第一個反應還是很直覺:介面是不是更好聊?prompt 要怎麼寫?agent 能不能一次看懂整個 repo? 這...
(診斷篇)我們為何總是治標不治本?洞悉阻礙你深入思考的九個陷阱 那個永遠在「提醒」的 PR 身為一個軟體工程師,我想你對這個場景肯定不陌生:你信心滿滿地提交了...
「明明很有想法,下筆卻很困難?」 這是我在工作中,時常接觸到知識型創作者和中小型企業主,最常聽到的心聲!他們能言善道,說自己的想法時,既真誠又有魅力(油嘴滑...