资讯动态

缓存加速实验

发布时间:2026/8/19 23:06:27 来源:尧图企业网站定制
缓存加速实验一、实验背景为什么需要 Nginx 缓存Nginx 作为反向代理服务器默认会把所有请求转发到后端业务服务器比如实验里的 172.25.254.10/20。如果用户频繁请求相同的 PHP/JS 文件后端服务器需要重复处理、返回数据会导致后端服务器负载高响应时间长用户体验差网络传输开销大。而 Nginx 的proxy_cache代理缓存功能能把后端返回的响应内容缓存到 Nginx 服务器本地后续相同请求直接从 Nginx 本地缓存返回不用再转发给后端从而大幅提升性能。步骤 1未启用缓存的压测基准测试步骤 2配置 Nginx 缓存步骤 3启用缓存后的压测一、先创建缓存目录mkdir-p/usr/local/nginx/proxy_cachechown-Rnginx:nginx /usr/local/nginx/proxy_cachechmod-R755/usr/local/nginx/proxy_cache二、Nginx 完整配置打开配置文件vim/usr/local/nginx/conf/nginx.conf直接全选复制下面内容覆盖# 缓存核心配置proxy_cache_path /usr/local/nginx/proxy_cachelevels1:2keys_zoneproxycache:20minactive120smax_size1g;三、重启 Nginxnginx-tnginx-sreload systemctl restart nginx四、绑定域名在RS3中执行echo172.25.254.100 lee.timinglee.org/etc/hosts五、最终压测命令在RS3中执行ab-n10000-c50-HHost: lee.timinglee.orghttp://172.25.254.100/index.php六、查看缓存文件ls/usr/local/nginx/proxy_cache/ tree /usr/local/nginx/proxy_cache/二、核心知识点拓展必懂Nginx proxy_cache 核心概念缓存命中 / 未命中1.1未命中Miss第一次请求 /index.phpNginx 转发到后端拿到响应后同时存入缓存这个过程叫 “缓存未命中”1.2.命中Hit第二次及以后请求 /index.phpNginx 直接从本地缓存返回数据不用找后端这个过程叫 “缓存命中”实验中 9999 次请求都是命中所以性能飙升。缓存 keyproxy_cache_key$request_uri 是核心决定 “什么算同一个资源”。比如$request_uri代表请求路径/index.php如果换成$host$request_uri会区分不同域名的同一路径适合多域名代理场景。缓存有效期proxy_cache_valid 按状态码设置有效期因为 200成功的响应稳定可缓存久一点404不存在可能临时变化缓存短一点。ab 压测工具基础适用场景快速验证 Web 服务的并发能力适合初学者注意事项压测机和被测机尽量在同一局域网避免网络带宽成为瓶颈并发数-c不要一次性设太大逐步增加比如从 10→50→100防止直接打挂服务器核心看 QPS、失败请求数、响应时间三个指标。反向代理 vs 缓存代理反向代理proxy_passNginx 作为 “中间人”把客户端请求转发给后端服务器再把后端响应返回给客户端无缓存时每一次请求都走这个流程缓存代理在反向代理基础上把后端的响应缓存到 Nginx 本地后续相同请求直接返回缓存减少后端请求量。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价