「譯」一行 JavaScript 代碼竟然讓 FT.com 網站慢了十倍

深克隆數據的原因是,我們會根據請求中的一些信息(例如,是否啟用了特定功能的切換),來改變對象。

為了解決這個問題——並減輕克隆所有內容的需要——我們在檢索時對對象應用了深度凍結,然後在數據被改動的地方克隆特定位。這仍然執行同步克隆——但僅限於更小的數據子集。

結論

修復好後,我們重新運行了負載測試,並在很短的時間內完成,0 次錯誤。

測試用時:37.476 秒

完成的請求:1000

失敗的請求:0

我們發佈了修復程序,看到響應時間和錯誤()立即減少,並希望一些用戶開心!

「譯」一行 JavaScript 代碼竟然讓 FT.com 網站慢了十倍

修復後首頁的響應時間

「譯」一行 JavaScript 代碼竟然讓 FT.com 網站慢了十倍

關於未來

  • 對其他一些應用程序運行此分析,並瞭解我們可以進一步優化和/或減少 dyno 大小,這也會很有趣。
  • 我們可以讓事件循環更可見嗎?
  • 我們的首頁應該是 stale-on-error——所以為什麼仍然會看到數以千計的錯誤頁面?這個數字好還是壞?

鏈接:https://juejin.im/post/5b7bb6dfe51d4538bf55aa5f


分享到:


相關文章: