單機世界里,“系統(tǒng)是否活著”這件事很好判斷——程序要么在跑,要么崩潰退出了,看一眼堆棧跟蹤,分界線清清楚楚。
可到了分布式系統(tǒng),這條界限就模糊得讓人不安。一個最常見的悖論是:所有服務(wù)器的健康檢查都返回 200 OK,運維儀表盤一片翠綠,用戶卻在成片報錯。另一種棘手狀況是,整個系統(tǒng)從技術(shù)上看仍在運轉(zhuǎn),進程沒退、端口開著,但它陷入了一個無法靠自己掙脫的僵死狀態(tài),所有自動化重試和切換機制全部啞火。
![]()
更隱蔽的,是靜默錯誤。沒有任何告警,沒有任何指標(biāo)異常,但系統(tǒng)已經(jīng)在悄悄地給出錯誤數(shù)據(jù),而每一個監(jiān)控面板依然顯示“一切正常”。
這些都不是我們通常理解的軟件缺陷。它們是分布式世界里反復(fù)上演的典型故障模式。幾十年來,這些模式在不同架構(gòu)、不同語言、不同規(guī)模的環(huán)境中一版又一版地重現(xiàn),并逐漸有了公認的名稱、發(fā)生機理和標(biāo)準化的防御手段。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.