工程事故與現實世界(續)

接上一篇《工程事故與現實世界》,繼續分享一些現實中的工程事故,以及其中帶來的啓示。html

關鍵報警

1979 年 3 月,美國賓夕法尼亞州三裏島核電站發生泄漏,20 英里範圍內的居民所有撤離,今後之後美國放棄了核電站建設。後端

事故發生時,反應堆容器發生壓力積聚,在這種狀況下,正常的應對方案是打開一個安全閥門,下降壓力到安全水平。這個安全閥門的設計是經過加電壓到電磁製動器上使其打開,打開後會有一個監控指示燈亮起,降壓後從新關上閥門,指示燈就會熄滅。緩存

操做人員在壓力彙集後按正常處理流程進行了閥門打開降壓操做,壓力下來後,操做人員移除電壓,閥門應該關閉,但實際上閥門被卡在了打開位置,而此時的監控指示燈卻熄滅了,操做人員誤覺得閥門已正常關閉,實際卻並無關上。安全

以後,反應堆容器中的冷卻劑一直泄漏了近 2 小時,直到反應堆頂部從冷卻液中暴露出來,燃料棒和芯塊開始融毀,在隨後的倉皇失措中,輪班人員一直相信控制面板上的指示燈,認爲人工減壓閥處於正常的關閉狀態。服務器

就是這樣一個小小的報警指示燈故障,致使了此次核事故。對於像核反應堆閥門這樣的關鍵系統部件,其工做狀態須要更準確的監控報警,甚至多重監控報警進行交叉驗證。好比:除了電路傳感的指示燈報警,還應該有更直接的開閉位置傳感報警。微信

三裏島核事故帶來的啓示是:對於系統中的核心關鍵節點,須要絕對直接並且準確的監控報警,報警自己就須要高可用,並且還能多重交叉驗證。網絡

忽略變化

20 世紀 50 年代,英國哈維蘭公司開發出了第一個商用噴氣式飛機,但後來該機型在同一年連續兩次出現墜毀。負載均衡

後經事故調查研究找到了緣由:噴氣式飛機由於比其餘機型飛行高度更高,在飛機起飛和着陸時爲使乘客不至於感到不適,不可避免要進行機內空氣加壓和減壓循環;而在噴氣式飛機出現以前的機型由於飛行高度低,不須要作加壓和減壓循環處理;當時的飛機設計人員沒人想到這會有什麼影響。分佈式

但反覆的空氣加壓和減壓循環,致使飛機頂部天窗用以發射無線電的鉚釘處金屬疲勞,產生應力老化裂紋,屢次加減壓循環後,裂紋擴大變成了裂縫,最終在某次飛行過程當中致使了空中解體。在飛機實驗室的壓力測試環境下並無真實的模仿實際的加壓和減壓週期,工程師對本身設計的可靠性陷入了一種錯誤的認識之中。測試

更可怕的是,在第一次墜機事故後,並無找到這個真正的緣由,覺得是一次意外偶然事件。在該機型停飛了兩個月後,由英國首相丘吉爾和該公司總裁聯合作出保證不會再出事,數週後該公司的另外一架由羅馬飛往開羅的班機又墜毀於地中海後,工程師們才找到真正的緣由。

在咱們作系統時,有一些變化發生了,可能只是咱們沒有注意到;還有一些變化可能並不常發生,它只在特定的異常下發生。互聯網應用的不少在線系統,大部分時候流量壓力是逐步積累的,但在特定的情形下也可能會發生劇烈的變化。一樣一個量級的流量,是逐步達到的,仍是忽然劇烈產生的,對系統帶來的壓力並不同。

好比,在作 IM 系統時,有一種場景是若是出現集中網絡閃斷,那麼全部 IM 客戶端的長鏈接都會一塊兒斷開,並集中重連。這時負載均衡極有可能會讓突發的集中重連流量所有打到後端第一個被輪詢到的機器上,單機就會被突發的集中流量擊垮。而若是是逐步提高的流量,則會均勻的被均衡到後端全部的分佈式服務器上。

設計時,盡力考慮全部可能的使用場景變化,而哈維蘭的教訓實在太深入與悲痛了。

蠕變效應

2006 年,波士頓的一個隧道內,有 4 塊天花板,每塊重 3 噸,忽然脫落掉了下來,砸中了行駛中的小車。

那麼問題來了,天花板爲何會忽然坍塌,而以前卻毫無徵兆?它們是如何固定的?天花板是由金屬支架支撐,支架使用螺栓插入鑽孔固定在隧道頂部,而螺栓則使用環氧樹脂膠填充螺栓和孔腔之間的間隙。

環氧樹脂是一種聚合物,其硬度會隨時間和溫度的變化而變化,若是忽然施加一個負載,環氧樹脂能在短期內很好的保持原來的形狀。但若是其持續承受負載(靜態負載),聚合物的分子可能會慢慢移動,形成環氧樹脂逐漸變形,這個過程就是 「蠕變」。

而隧道中使用的環氧樹脂具備不好的抗蠕變性,負責安裝的工程師忽略了這個事實,也多是對此缺少了解,所以形成了此次事故。

而程序系統中相似 「蠕變效應」 的問題有不少,好比:磁盤日誌,緩存空間,內存回收,數據存儲,索引週期。全部這些均可能由於足夠長時間的系統運行,形成 「蠕變」 積聚,直到撐不住引起事故。

系統中沒有所謂的抗 「蠕變」 組件,所以咱們須要對這些可能發生 「蠕變」 的地方進行週期性的檢查,並及時處理。

...

以上就是我此次雙十一前讀到的一些關於現實世界更傳統的工程事故,以及帶給個人啓示。泰坦尼克號號稱當時世界上最安全的船,在撞上冰山以後,回過頭來一看處處都是顯而易見的問題。俄國做家費奧多·陀思妥耶夫斯基曾說過一句名言:

當失敗時,彷佛一切都顯得愚蠢。

現實世界的工程事故會顯得更殘酷,難免感慨工程師真要有敬畏之心,能修復缺陷,解決問題當然不錯,但能提早去規避和發現會更好。


寫點文字,畫點畫兒,記錄成長瞬間。 微信公衆號「瞬息之間」,既然碰見,不如同行。

原文出處:https://www.cnblogs.com/mindwind/p/10092918.html

相關文章
相關標籤/搜索