http的499狀態碼是什麼鬼?

2021-10-04 14:44:00 字數 958 閱讀 5184

在排查mysql鎖表的情況時,發現總是出現兩次相鄰的同樣請求。

而且第一次的事務基本都成功,第二次的失敗

繼續分析得出,因為**時間比較長,超過了30s,使用者無法忍受。

重新整理了頁面或者關閉重新提交同樣的修改資料。但第一次的事務還在進行中。

結果就出現了,為了驗證自己的想法,對499進行了模擬

sqlstate[hy000]: general error: 1205 lock wait

timeout exceeded; try restarting transaction ******xx

ngx_null_string, /* 499, client has closed connection */
我做了乙個php的頁面,**很簡單

echo'';

print_r(

$_post);

exit

;

產生的日誌

"-" 0.131加上sleep後

sleep(20)

echo'';

print_r(

$_post);

exit

;

然後請求頁面後,2秒後關閉頁面

情況出現

"-" 3.861只能優化**速度,把耗時的程式部分放到單獨的佇列裡面除了

狀態碼499 HTTP狀態碼最全彙總

狀態碼的職責是當客戶端向伺服器端傳送請求時,描述返回的請求結果。借助狀態碼,使用者可以知道伺服器端是正常處理了請求,還是出現了錯誤。注意,狀態碼是服務端向客戶端傳送的反映響應結果的標識碼。下面是常見的幾種狀態碼 伺服器有一組用來表示成功的狀態碼,分別對應於不同型別的請求。重定向狀態碼要麼告訴客戶端使...

HTTP 499 狀態碼 nginx下 499錯誤

日誌記錄中http狀態碼出現499錯誤有多種情況,我遇到的一種情況是nginx反代到乙個永遠打不開的後端,就這樣了,日誌狀態記錄是499 傳送位元組數是0。老是有使用者反映 系統時好時壞,因為線上的產品很長時間沒有修改,所以前端程式的問題基本上可以排除,於是就想著是get方式呼叫的介面不穩定,問了相...

Nginx的HTTP 499狀態碼及問題處理

1 遇到的問題 2 處理方法 499錯誤是什麼?讓我們看看nginx的原始碼中的定義 可以看到,499對應的是 client has closed connection 這很有可能是因為伺服器端處理的時間過長,客戶端 不耐煩 了。測試nginx發現如果兩次提交post過快就會出現499的情況,看來是...