一:Nginx介绍:
在Nginx调优方面大多关注与Nginx的各种buffer的大小,由于Nginx是异步转发模式(当接收到客户端的请求后自己做一些处理,比如将前端的连接信息缓存至自己的buffer中做一些处理后才交至后端webserver),
能将所有来自客户端的请求连接与自身建立,减轻了后端webserver的压力,不像squid使用的是同步转发模式,所有来自客户端的请求连接都做修改转发给后端的webserver,不能够减少webserver的压力。
二:nginx的缓存功能配置:
角色 IP
Nginx(代理) 10.43.2.11
httpd(webserver) 10.43.2.77
httpd(webserver) 10.43.2.76
我们修改Nginx的配置文件加上一下两句:
proxy_cache_path /nginx/cache/first levels=1:2 keys_zone=first:20m max_size=1g; //添加在server段之上也就是http端中 定义缓存目录级别 以及缓存空间 location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_cache first; //缓存缓存区域要与keys_zone=first:20m 名称对应 proxy_cache_valid 200 10m; //定义缓存响应码为200 的时间为10分钟 add_header X-Via $server_addr; add_header X-Cache "$upstream_cache_status from $server_addr"; //$upstream_cache_status 显示缓存状态(hit|miss) proxy_pass http://httpd; }
mkdir -pv /nginx/cache/first 创建上边定义的缓存目录
三:测试:
首次访问10.43.2.11会出现如下信息:
由于是首次测试,没有产生缓存所以缓存状态为MISS,当我们再测访问一次时由于第一次访问产生缓存就会出现如下结果:
这是Nginx的简单缓存配置。
时间: 2024-11-10 13:38:15