## 現實差距:5毫秒 vs. 2秒你在自己的機器上推出一個功能,感覺即時。API 回應時間為 **5毫秒**,按鈕立即響應,模態框無延遲關閉。狀態:**完成**。✅然後用戶開始反映問題。在**地鐵隧道的4G連接**上,同樣的請求卻需要**2秒**。突然間,你的應用出現了在本地從未遇過的問題:- 🖱️ **重複提交**:用戶點擊「提交」兩次 (因為看起來沒有任何反應),結果被收取了兩次費用。- 🔄 **無限轉圈**:當封包丟失時,載入狀態無限掛起。- 🏎️ **競態條件**:回應以錯誤的順序到達,破壞用戶資料。罪魁禍首?**使用 Gigabit 光纖速度在 localhost 測試完全掩蓋了這些錯誤**。你不是在測試你的應用——你是在測試一個理想化的版本。## 為什麼 time.sleep() 不奏效直覺很熟悉:在測試中加入延遲,以模擬「慢速網路」。
為什麼你的測試速度比現實更快:本地主機延遲陷阱及其解決方案
現實差距:5毫秒 vs. 2秒
你在自己的機器上推出一個功能,感覺即時。API 回應時間為 5毫秒,按鈕立即響應,模態框無延遲關閉。狀態:完成。✅
然後用戶開始反映問題。在地鐵隧道的4G連接上,同樣的請求卻需要2秒。突然間,你的應用出現了在本地從未遇過的問題:
罪魁禍首?使用 Gigabit 光纖速度在 localhost 測試完全掩蓋了這些錯誤。你不是在測試你的應用——你是在測試一個理想化的版本。
為什麼 time.sleep() 不奏效
直覺很熟悉:在測試中加入延遲,以模擬「慢速網路」。