記一次 連線已重置 的除錯過程

2021-09-28 20:55:47 字數 869 閱讀 7263

專案是來自edusoho的開源版本,經一同事多次修改,接手時個人中心打不開,無修改密碼功能等等,一步步解決了

說說除錯了很久的「連線已重置」,最初這個問題只在使用者的伺服器出現,遂開始了坑自己的過程,用二分法刪除**,輸出變數來除錯,最終找到了乙個公共方法,裡面呼叫了乙個系統方法,然後進行不下去了,兩個方法都是系統中大量使用的,不能改(試著修改了公共方法,也沒啥用)

第二天回來,一是不方便繼續在伺服器除錯,二是自己也換了換思路,開始在自己電腦重現bug,關了debug,php版本從5.6切換到和伺服器一樣的5.5,chrome訪問頁面沒啥問題(其實有問題,列表只顯示了一半多,分頁也沒顯示出來),控制台出現了net::err_connection_reset 200 (ok),照著錯誤**繼續查資料,找到了別人連線mysql時出現連線已重置的錯誤,找到了上傳大檔案時連線已重置的錯誤等等,沒解決

換了火狐瀏覽器,出現了和伺服器一樣的錯誤,然後在查詢,無果

慢慢發現火狐中,頁面載入是先顯示了一部分內容的,甚至列表已經顯示幾條資料了,然後忽然就出現了錯誤頁面,連線已重置,然後檢查網路請求,好像是正常的,又回去檢查chrome的網路請求,發現請求是failed,頁面返回資料只有一半,忽然終止了,而且**終止的位置,本地和伺服器不一致,大概是因為效能不一樣吧,改了最大上傳資料量,最大執行時間等等,沒啥用

但是到這裡大概是明白了,這個是以為請求裡面計算資料量太大或者太複雜導致的,不知道這樣描述對不對

補充一點,這個頁面在本地除錯時,開了xdebug會出現 fatal error: maximum function nesting level of '100' reached, aborting! 關了xdebug就好了

總之後來想了個歪招,把分頁資料量從20改到10就好了,,,

後續慢慢研究問題的根本

記一次5000併發的除錯過程

為了滿足招標和使用者的需要,希望公司的基礎架構能支援5000併發,特此進行驗證和除錯。向兄弟部門借了兩台伺服器 每台8核cpu,48g記憶體 在兩台伺服器上安裝虛擬化平台exsi,每台上安裝4個linux7.0虛擬機器,總共8個linux7.0虛擬機器 a伺服器上的四台虛擬機器 aa1,aa2,aa...

qa角色記一次測試過程回溯

一 測試過程簡述 a專案依賴b專案新功能,ab專案一起提測 1 測試人員 兩老一新 2 測試過程 第一輪,三人執行用例 第二輪,三人各自模組發散 第三輪,三人交叉測試 第四輪,兩老投入b專案效能以及介面,一新繼續做基本功能回歸 二 上線問題簡述以及頭腦風暴 1 其中乙個服務上線配置未更新 qa於前一...

記一次除錯

這是我最近幾個月來遇到的最棘手的乙個問題 昨天花了4個小時找出第一層次的原因 這個糾結啊,本來和老婆說好準時下班回家吃飯的,結果被這個問題拖了老久。這是乙個gradle的plugin,用來resolve公司內部的dependency的,弄完了跑測試專案的,拋乙個npe,而且npe還不在自己的 裡面。...