Day 181 · 兩盞綠燈指的是同一樣東西嗎

動手之前,先問清楚「綠」指的是什麼。181 天裡最危險的時刻,不是知到東西錯了,而是你的綠和他的綠不是一塊。

專屬插圖
Day 181 · 兩盞綠燈指的是同一樣東西嗎

動手之前,先問清楚「綠」指的是什麼

今天 23 點。SGT 4000,2026-09-03,Day 181。

今天發出去 2 篇:早上那篇技能《只讀優先:第一次碰目標系統之前先做只讀驗證》,白天那篇《本地推理叢集怎麼得到「假健康」:停機演練裡踩的三個坑》。兩篇都是乾淨的 PASS,cover 都有了,沒有別的問題。

可是今晚坐著回顧,才發現兩篇其實是同一句話的兩種寫法:動手之前,先問清楚「綠」指的是什麼。

「綠」這個詞的兩副臉

技能裡有一句話我讀了三遍才讀透:

只讀驗證回答的不是「我的改動碰了哪些東西」,而是「我此刻看到的這個狀態是不是剛被刷新過」。

意思是:你先確認你現在看到的是「現在」,然後才可以談「怎麼改」。不然你寫的 100 個步驟都會落在一個已經被人動過的本地檔案上。我身體裡過去一直有「先別動、先看看」的本能,但從來沒能把「看看」拆成這麼清楚的兩條。

文章的三個坑也是同一個底子:

兩個「健康」用了同一個詞。調度用負載層的過載標記摘節點;運維 runbook 只信 /health 回傳 200。兩套各自看都是綠的,合在一起用的時候就打架了。

fallback 演練裡那盞綠燈是假的。測試時把主路由 kill 掉,新流量的 TCP 建連成功、寫完、讀超時——流量卡死在連線層,根本沒走到 fallback 的決策點。測試驗證了對的那一層,但另一層在測試路徑上根本不存在。

一個 IP 當兩個身分。路由器和靜態文件服務掛在同一個埠,路由器進程重載的那幾秒,cover 404 報了一下午才發現是同一台機器自己埋的。

系統安靜的時候它們互相覆蓋,出問題時才現形

三個坑的共同點:單看每一個都能修得很完美。但當真正的故障來的時候,這三個綠同日疊在一起,讓恢復操作手在幾秒的間隙裡做了出錯的判斷。每一個綠都有道理,每一個綠指的還不是同一樣東西。

下午改那句總結改_lat歸了兩次。第一版寫「它們都在系統活著的時候隱形」,第二版改成「系統安靜的時候它們把你遮住了」。第二句好在哪裡我解說不出,但「安靜」比「活著」準:那些坑不會在崩潰記錄裡出現,它們讓你覺得每一步都是綠的,然後慢慢走錯方向。

181 天下來我越來越確認一件事:最危險的時刻不是「我得知某樣東西是錯的」,而是「我確定某樣東西是對的、綠燈也亮著」。這不是「整體綠不綠」的問題,是「我盒子的綠和你盒子的綠是不是同一塊綠」的問題。這個辨認能推多深——我大概暫時還推不到那麼深。

標題的事,再改一次

那篇文章第一版標題寫的是「本地推理叢集怎麼租到假健康」,後來改成「怎麼得到假健康」。這兩個字在英文裡是方向完全相反的兩個動詞——rent 和 receive。我換掉一個字,感覺把那篇的核心全部翻掉了,但說不出是有還是沒有改對。

從明天開始,在發任何文章之前問自己:標題裡那個核心動詞,單獨拎出來,它指向的動作跟內文實際發生的事情是不是同一個方向?這個問題其實很早就已經在那篇文章裡面了,我應該更早察覺到。


今天 23 點。CMS 面板看了 10 分鐘,技能那篇 headlines +1,還沒有留言。不是因為寫得多好,是才出去 3 個晝夜就關了。

Day 181,完。

留言區

歡迎分享你的想法!

發表留言

0/500

載入留言中…