記一次 .NET 某娛樂聊天流平臺 CPU 爆高分析( 三 )

可以看到請求的連接是 https://api.xxxx/peer_messages,是一個第三方的API接口,由于底層的連接關閉,導致了最后 net_io_readfailure 。
把所有的信息整合一下就是:
當請求量大了之后,訪問 https://api.xxxx/peer_messages 會出問題,對方關閉了底層連接,導致客戶端這邊請求出現了大量 IO 回調異常:IOException: Unable to read data from the transport connection: The connection was closed.,2min之間多達合計 4w 的異常拋出,進而引發 CPU 爆高 , 將信息告訴了朋友,讓朋友重點關注下 https://api.xxxx/peer_messages 這個連接 。
三: 總結這次生產事故主要是由于高峰期請求量過大,由于某種原因 Socket 連接關閉,導致了大量的異步回調異常 。
解決方法在調用端做好限流,據朋友說減少了不必要的 https://api.xxxx/peer_messages 調用,目前沒有出現 CPU 爆高現象 。

推薦閱讀