最近多次遇到了502錯誤,記錄一下,說說我的排查思路:
首先,排查是不是網絡原因,是否看開了諸如藍燈等代理,web服務是否啟動等外部因素所造成的502。是個別訪問有問題(防火牆之類原因)還是全部訪問都存在問題。
其次,請求多次,是否時好時壞,這種情況下可能是由於請求數太多所造成;結合日誌,排查是否進程數滿了。
以上原因都不是,那重點就應該放在服務內部,排查服務卡在了哪裡從而引起502錯誤。
響應超時,重點排查一下是否數據庫壓力過大,存在慢查詢,結合服務日誌,使用EXPLAIN輸出執行計劃,分析sql性能。
最後,觀察系統性能來分析原因,可以從以下幾方面入手:
- 系統內存使用情況,監測一下系統swap使用情況,是否異常增長
- 是否存在大量的I/O操作,導致cpu空閒,影響系統性能
- cpu是否被進程長時間佔用,導致進程調度受阻
- 某一時刻執行了大量任務,造成堆積,結合日誌,時間點分析具體情況
諸如服務器被惡意攻擊等因素未列入排查範圍。
閱讀更多 GT七妖妖 的文章