日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Nginx >内容正文

Nginx

Nginx缓存的配置调优,Tengine安装和配置。

發布時間:2023/12/20 Nginx 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nginx缓存的配置调优,Tengine安装和配置。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

反向代理緩存:

????nginx做為反向代理時,能夠將來自upstream的響應緩存至本地,并在后續的客戶端請求同樣內容時直接從本地構造響應報文。

可以在http全局配置內定義緩存。

http{

proxy_cache_path /tmp/nginx/cache levels=1:2 keys_zone=cone:10m max_size=1g;

}

在Server里調用。


server {

? ? ? ? listen ? ? ? 80;

? ? ? ? server_name ?localhost;

? ? ? ? location / {

? ? ? ? proxy_pass http://192.168.18.121;

? ? ? ? proxy_cache cone;

? ? ? ? proxy_cache_valid 202 1h;

? ? ? ? proxy_cache_valid 302 10m;

? ? ? ? proxy_cache_valid any 1m;

? ? ? ? }

}
inactive:非活動緩存項從緩存中剔除之前的最大緩存時長;

配置成功了,那如何驗證緩存有沒有命中?

可以把后端服務器添加到upstream里面,引入一個upstream_cache_status變量其作用是檢查緩存狀態,用addheader添加到響應首部里面。

upstream模塊常用指令:

ip_hash:基于客戶端IP地址完成請求的分發,它可以保證來自于同一個客戶端的請求始終被轉發至同一個upstream服務器;

keepalive:后端服務器到upstream服務器的持久連接。

least_conn:最少連接調度算法;

server:定義一個upstream服務器的地址,還可包括一系列可選參數,如:

weight:權重;

max_fails:最大失敗連接次數,失敗連接的超時時長由fail_timeout指定;

fail_timeout:等待請求的目標服務器發送響應的時長;

backup:用于fallback的目的,所有服務均故障時才啟動此服務器;

down:手動標記其不再處理任何請求;

example:

????

upstream backend {

?ip_hash;

?server www.magedu.com weight=5;

?server www2.magedu.com:8080 ? ? ? max_fails=3 ?fail_timeout=30s;

}

Fastcgi緩存配置:

定義緩存

http{

fastcgi_cache_path /tmp/nginx/fastcgi levels=1:2 keys_zone=fcgi:20m max_size=1g;

}

設定主頁和路徑

server {

? ? ? ? listen ? ? ? 80;

? ? ? ? server_name ?localhost;

? ? ? ? #charset koi8-r;

? ? ? ? location / {

? ? ? ? ? ? ? ? root /var/www/html;

? ? ? ? ? ? ? ? index index.php;

}

}

配置緩存

location ~ \.php$ {

? ? ? ? ? ? root ? ? ? ? ? /var/www/html;

? ? ? ? ? ? fastcgi_pass ? 192.168.18.121:9000;

? ? ? ? ? ? fastcgi_index ?index.php;

? ? ? ? ? ? fastcgi_param ?SCRIPT_FILENAME ?/scripts$fastcgi_script_name;

? ? ? ? ? ? include ? ? ? ?fastcgi_params;

? ? ? ? ? ? fastcgi_cache fcgi;

? ? ? ? ? ? fastcgi_cache_valid 200 10m;

? ? ? ? ? ? fastcgi_cache_valid 301 302 2m;

? ? ? ? ? ? fastcgi_cache_valid any 1m;

? ? ? ? }

我們先把緩存給注釋掉,然后reload,用ab命令測試下速率。

現在我們把緩存功能打開,然后reload再測試,看效果大大不同吧。


配置Gzip壓縮功能,以節約帶寬。

? gzip on;

啟用和關閉gzip

? gzip_min_length ?1k;

最小壓縮長度
? gzip_buffers ? ? 4 16k;

設定壓縮響應的緩沖,默認大小等同于你的內存頁,4k或8k至于多少取決于你的平臺。
? gzip_http_version 1.0;

設置最低http協議版本
? gzip_comp_level 2;

設置壓縮基本取值范圍1-9
? gzip_types ? ? ? text/html text/plain application/x-javascript text/css application/xml;

設置壓縮類型
? gzip_vary on;?

http部分調優:?

client_header_buffer_size 4k;
客戶端請求頭部的緩沖區大小,這個可以根據你的系統分頁大小來設置,一般一個請求頭的大小不會超過1k,不過由于一般系統分頁都要大于1k,所以這里設置為分頁大小。分頁大小可以用命令getconf PAGESIZE 取得。

open_file_cache max=102400 inactive=20s;
這個將為打開文件指定緩存,默認是沒有啟用的,max 指定緩存數量,建議和打開文件數一致,inactive 是指經過多長時間文件沒被請求后刪除緩存。

open_file_cache_valid 30s;
這個是指多長時間檢查一次緩存的有效信息。

open_file_cache_min_uses 1;
open_file_cache 指令中的inactive 參數時間內文件的最少使用次數,如果超過這個數字,文件描述符一直是在緩存中打開的,如上例,如果有一個文件在inactive 時間內一次沒被使用,它將被移除。

參考文檔:http://foreveryan.blog.51cto.com/3508502/674322

平滑升級:

先用新版本的Nginx程序把老版本的替換掉,然后給master進程發一個信號,讓主進程重啟一下。

????kill -SIGUSER2 <master_process_id>

日志滾動:

????-s reopen: kill -SIGUSR1 <master_process_id>

????1、mv /var/log/nginx/access.log /var/log/nginx/access.bak

????2、kill -s SIGUSR1 20980

信號發送完后,應該將源日志文件改名,或者移動到別的地方,系統會自動建立一個新日志文件。

重讀配置文件:

????-s reload:kill -SIGHUP <master_process_id>


安裝Tengine

  • tar zxvf tengine-2.0.3.tar.gz

  • cd tengine-2.0.3

編譯之前先安裝依賴程序包:

gd-2.0.35-11.el6.i686.rpm

gd-devel-2.0.35-11.el6.i686.rpm

GeoIP-1.4.8-1.el6.i686.rpm

GeoIP-devel-1.4.8-1.el6.i686.rpm

lua-devel

pcre-devel

開始編譯安裝:

./configure \

? --prefix=/usr \

? --sbin-path=/usr/sbin/nginx \

? --conf-path=/etc/nginx/nginx.conf \

? --error-log-path=/var/log/nginx/error.log \

? --http-log-path=/var/log/nginx/access.log \

? --pid-path=/var/run/nginx/nginx.pid ?\

? --lock-path=/var/lock/nginx.lock \

? --user=nginx \

? --group=nginx \

? --enable-mods-shared=all

  • make && make install


詳細用法參考官網:tengine.taobao.com


有問題歡迎與我交流QQ1183710107

總結

以上是生活随笔為你收集整理的Nginx缓存的配置调优,Tengine安装和配置。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。