nginx優化 timeout超時配置

2022-06-28 13:00:10 字數 1453 閱讀 1537

nginx在保持著與客戶端的連線時,要消耗cpu/記憶體/網路等資源,

如果能在超出一定時間後自動斷開連線,

則可以及時釋放資源,起到優化效能、提高效率的作用

對應的原始碼可以訪問這裡獲取: 

1,keepalive的作用:

http 的 keepalive 模式:

webserver 在處理完乙個請求後保持這個 tcp 連線的狀態仍然是開啟。

如果再次接收到來自此客戶端的其它請求,

服務端會使用這個未關閉的連線,而不是再新建乙個連線

2,keepalive的配置:

keepalive_timeout  60

45;

兩個引數分別是:

nginx服務的超時時間(預設值是75s,建議設定為60秒)

nginx在給瀏覽器的響應header資訊中的超時時間

注意,第二個引數設定之後才會在瀏覽器端出現keepalive一項:

如圖:

3,nginx給header的超時資訊並不是肯定會得到瀏覽器的執行

4,keepalive_timeout的值應該大於client_body_timeout

client_header_timeout         15s;
預設值是60s

客戶端向服務端傳送乙個完整的 request header 的超時時間

如果60s內沒有收到完整的http request header,則為超時

如果客戶端超時,nginx 返回 http 408(request timed out)。

client_body_timeout            15s;
預設值是60s

客戶端向服務端傳送 request body 的超時時間

如果連續的60s內沒有收到客戶端的1個位元組,則表示超時

如果客戶端超時,nginx 返回 http 408(request timed out)。

send_timeout                  15s;
預設值是60s

send_timeout 指定客戶端的響應超時時間。

這個設定指的是在這段時間內,客戶端沒有讀取任何資料,nginx就會關閉連線.

有大檔案上傳時,需要指定body的最大值

client_max_body_size          50m;
這個指定的預設值是1m,基本上不可能滿足使用需求

如果需要上傳較大的檔案,在這裡指定乙個最大值

這裡指定檔案最大是50mb

[root@centos8 conf.d]# /usr/local/soft/nginx-1.18.0/sbin/nginx -v

nginx version: nginx/1.18.0

hive 優化超全

select僅查詢本表字段 where僅對本表字段做條件過濾 explain 顯示執行計畫 explain extended query hive執行方式 本地模式 將資料抓取到本地 計算 集群模式 計算向資料移動 主要耗費時間是 提交任務 和 yarn 資源管理 本地模式 開啟本地模式 set h...

php優化 nginx優化 mysql優化

php優化 1 將類的方法定義為static。2 盡量使用單引號。3 修改php fpm程序數。4 修改單個指令碼最大可使用記憶體。5 大的陣列使用完之後要及時釋放。6 迴圈的時候,制定最大迴圈次數 7 不使用 遮蔽錯誤 8 盡量採用大量的 php 內建函式 9 使用require代替require...

nginx 優化 Nginx 站點目錄

禁止解析指定目錄下的指定程式 location data php php5 sh pl py 根據實際來禁止哪些目錄下的程式,且該配置必須寫在 nginx 解析 php 的配置前面 deny all 禁止訪問指定目錄 location data php php5 sh pl py 根據實際來禁止哪些...