此內容應用於Nginx反代;
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; upstream backend { server 192.168.11.163:80 weight=1; server 192.168.11.165:80 weight=1; } proxy_temp_path /etc/nginx/proxy_temp_dir; proxy_cache_path /etc/nginx/proxy_cache_dir levels=1:2 keys_zone=cache_one:50m inactive=1m max_size=10g; server { listen 80; server_name www.test.com; #增加兩個響應頭信息,用於獲取訪問的服務器地址與緩存是否成功 add_header X-Via $server_addr; add_header X-Cache $upstream_cache_status; location / { proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid 200 10m; #緩存10分鍾 proxy_cache_valid 304 10m; #緩存10分鍾 proxy_cache_valid 301 302 1h; #緩存1小時 proxy_cache_valid any 1m; #其他未設置的狀態緩存1分鍾 proxy_pass http://backend; proxy_set_header Host $host; #轉發請求頭信息 proxy_set_header X-Forward-For $remote_addr; #轉發請求IP地址
}
}
查看緩存文件已經生成:
[root@web02 nginx]# tree proxy_cache_dir/ proxy_cache_dir/ ├── 2 │ └── 0e ├── 3 │ └── 1b ├── 9 │ └── f3 ├── b │ └── a0 └── f └── ce └── 6f9821e6a884944244c4c061ff857cef 10 directories, 1 file
進行壓力測試,可以與未進行緩存配置結果進行對比,訪問速度比未進行緩存配置要快很多;
# yum -y install httpd-tools
# ab -n 100000 -c 100 http://192.168.11.167/index.html