摘要:今天發現有不少的錯誤,大約占了將近,而且是在新上線了一個含的業務之后。總之,這個錯誤的比例升高可能表明服務器處理過慢,導致用戶提前關閉連接。而正常情況下有一個小比例是正常的。
今天發現nginx有不少的499錯誤,大約占了將近0.5%,而且是在新上線了一個含upstream的業務之后。
grep一下nginx源碼,定義在ngx_request_t.h
/* * HTTP does not define the code for the case when a client closed * the connection while we are processing its request so we introduce * own code to log such situation when a client has closed the connection * before we even try to send the HTTP header to it */ #define NGX_HTTP_CLIENT_CLOSED_REQUEST 499
這下就很清楚了,這是nginx定義的一個狀態碼,用于表示這樣的錯誤:服務器返回http頭之前,客戶端就提前關閉了http連接。
再grep下“NGX_HTTP_CLIENT_CLOSED_REQUEST”,發現目前這個狀態值只在ngx_upstream中賦值。
upstream在以下幾種情況下會返回499:
(1)upstream 在收到讀寫事件處理之前時,會檢查連接是否可用:ngx_http_upstream_check_broken_connection,
if (c->error) { //connecttion錯誤 …… if (!u->cacheable) { //upstream的cacheable為false,這個值跟http_cache模塊的設置有關。指示內容是否緩存。 ngx_http_upstream_finalize_request(r, u, NGX_HTTP_CLIENT_CLOSED_REQUEST); } }
如上代碼,當連接錯誤時會返回499。
(2)server處理請求未結束,而client提前關閉了連接,此時也會返回499。
(3)在一個upstream出錯,執行next_upstream時也會判斷連接是否可用,不可用則返回499。
總之,這個錯誤的比例升高可能表明服務器upstream處理過慢,導致用戶提前關閉連接。而正常情況下有一個小比例是正常的。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/39151.html
摘要:序本文主要來聊一下的當中出現的問題。問題描述原因服務器返回頭之前,客戶端就提前關閉了連接,常見于后臺接口處理時間比較長,而前端請求又自帶有超時時間。復現請求實例帶超時時間請求后臺接口關于如下實例服務器排障之錯誤的解決 序 本文主要來聊一下nginx的access log當中出現的499問題。 問題描述 499 CLIENT CLOSED REQUEST A non-standard s...
摘要:周三晚加上了對阿波羅超時的監控,周四觀察上線期間阿波羅超時指標的變化,時間也吻合。月日下午又報了一次警與此同時的阿波羅超時監控這里同時列出機器指標的目的是為了說明,盡管沒有報警,但機器的指標變化和是統一的。 順風車運營研發團隊 熊浩含 問題現象 線上報警群里時而有php-fpm-idle的零星報警,持續時間很短(幾秒甚至一秒),見下圖 showImg(https://segmentf...
摘要:目的錯誤碼告警和超時告警超時告警數據分析關于錯誤和超時監控有一點要考慮的是收到告警時,要能夠快速知道是哪個后端服務節點出現了問題。關于消息隊列的選擇,前面已經提到我們已有集群就直接拿來用了。 背景 在我們的系統架構中,Nginx作為所有HTTP請求的入口,是非常重要的一層。每天產生大量的Nginx Access Log,閑置在硬盤上實在是太浪費資源了。所以,能不能把Nginx日志利用起...
摘要:最終獲得一個鏈接,里面有這樣的描述如何在阿里云負載均衡上啟用支持無需配置,當選用監聽時,默認支持無加密版本協議協議當選擇監聽時,默認支持加密版本的協議協議。詳細參見如何使用負載均衡性能保障型實例。 Websocket是HTML5之后的一個新事物,可以方便的實現客戶端到服務端的長會話,特別適合用于客戶端需要接收服務端推送的場景。例如在線客服聊天,提醒推送等等。改變了以往客戶端只能通過輪詢...
閱讀 3469·2021-09-02 09:53
閱讀 1792·2021-08-26 14:13
閱讀 2750·2019-08-30 15:44
閱讀 1313·2019-08-30 14:03
閱讀 1962·2019-08-26 13:42
閱讀 3014·2019-08-26 12:21
閱讀 1302·2019-08-26 11:54
閱讀 1899·2019-08-26 10:46