為了記錄接口響應(yīng)時(shí)間,會(huì)通過調(diào)整Nginx日志格式來記錄接口的請求和響應(yīng)詳細(xì)情況
項(xiàng)目采用的日志結(jié)構(gòu)如下:
log_format main '$remote_addr - $remote_user [$time_local] "$request" $request_time $upstream_response_time '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
最近在分析接口時(shí)發(fā)現(xiàn)某個(gè)接口的請求詳情如下:
192.168.1.11 - - [02/Dec/2022:11:01:35 +0800] "POST /xxx/xxxx HTTP/1.1" 5.687 0.146 200 535863 "http://localhost:7456/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36" "-"
分析接口發(fā)現(xiàn) 接口的兩個(gè)時(shí)間差別很大 這里就需要分析下兩個(gè)接口的時(shí)間了,然后來定位問題的原因
request_time : 指的就是從接受用戶請求的第一個(gè)字節(jié)到發(fā)送完響應(yīng)數(shù)據(jù)的時(shí)間,即$request_time包括接收客戶端請求數(shù)據(jù)的時(shí)間、后端程序響應(yīng)的時(shí)間、發(fā)送響應(yīng)數(shù)據(jù)給客戶端的時(shí)間(不包含寫日志的時(shí)間)
upstream_response_time: 是指從Nginx向后端建立連接開始到接受完數(shù)據(jù)然后關(guān)閉連接為止的時(shí)間
上面描述可以看出, request_time肯定比upstream_response_time值大,尤其是在客戶端采用POST方式提交較大的數(shù)據(jù),響應(yīng)體比較大的時(shí)候。在客戶端網(wǎng)絡(luò)條件差的時(shí)候,request還會(huì)被放大
出現(xiàn)這個(gè)問題的原因大概是因?yàn)榫W(wǎng)絡(luò)問題導(dǎo)致的,看到這個(gè)接口返回的數(shù)據(jù)量比較大,在網(wǎng)絡(luò)不好的情況下這個(gè)差距估計(jì)被放大了,之前這兩個(gè)時(shí)間基本都是相等的或者差別在ms級(jí)別
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
本文題目:Nginx學(xué)習(xí)之request-創(chuàng)新互聯(lián)
URL鏈接:http://www.rwnh.cn/article30/csjjso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、響應(yīng)式網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站制作、域名注冊、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容