由于自己是寫Server端程序的。最近有個別客戶反映在服務(wù)端負載量大的情況下,經(jīng)常有客戶端的TCP請求處理超時。看了log文件,發(fā)現(xiàn)是服務(wù)端接收請求之后,未能及時處理請求并回復(fù)客戶端應(yīng)答造成。
仔細觀察了請求的處理過程,唯一耗時的就是文件I/O的Flush操作,因為這個操作會強制要求OS提交IO請求,而不是用OS自帶的IO緩沖。如果在IO處理非常頻繁的情況下,的確會導(dǎo)致服務(wù)端I/O告急,磁盤壓力過大,性能大幅下降,