線上網站網站報2002錯誤

每個週一都好累....................
每個週一都有那麼多的問題 作爲一個運維,並且是一個女生,心好累
好了,進入正題,這個週一先是數據庫出問題,差點背上刪庫跑路的鍋,不過還好,老天保佑我.............
此次線上的項目出問題了,用戶反映觀看我們的視頻會出現 服務器錯誤信息,不過這個錯誤的話是瞬間性的,可能5分鐘出現一次。週一我處理完數據庫問題,披着勞累的心又來處理此問題。項目環境是lnmp,全部服務是阿里雲的,數據庫是阿里雲RDS mysql,我檢查服務器報錯日誌,查不到任何有意義的信息,最終報錯信息在web的JS頁面查出問題,報錯顯示:{"error":{"message":"An exception occured in driver: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known","code":0}} 通過此問題進行一步一步排查。
排查思路:通過報錯信息得到的信息有兩點 域名解析造成DNS問題 數據庫層面問題 服務器vpc網絡 數據庫經典網絡,網絡類型不同引發的網絡延遲
第一步:在測試環境復現此問題,讓研發人員把測試庫數據庫連接地址改爲線上庫,查看測試環境並不會出現此問題
第二部:在生產上新配置一個站點,新解析一個域名,發現問題存在,排除域名問題。
第三部:數據庫問題已經排除,域名問題已經排除,最後檢查服務器問題。重啓nginx php-fpm問題
最終解決!
此問題出現的原因:重啓php-fpm後服務不會出現此問題,分析php-fpm進程有假死的狀態,導致出現瞬間性的錯誤產生。
當時發生問題後,百度了一些文章,和我們出現的報錯一樣,僅供大家參考
https://help.aliyun.com/knowledge_detail/92120.html?spm=5176.11065259.1996646101.searchclickresult.38bf1fcdSKxZWB

出現問題,排查思路尤爲重要。
排查思路,在日後的工作經驗中望慢慢提升,加油!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章