Nginx 缓存配置
此内容应用于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