您好,登錄后才能下訂單哦!
論壇頭像是動態的,例如:http://xxx.xxx.xxx/avatar.php?uid=xxx&size=big
每個用戶的頭像文件都有big、middle、small三個,并且在不同場景分別調用不同尺寸的頭像圖片,比如帖子、個人設置、頭像編輯、登陸等等場景,無形中增加了nginx與php之間的工作壓力,如果能夠把這個解析結果緩存起來,那么就會減少nginx與php的通信壓力,會降低系統cpu使用率。
測試nginx緩存功能,配置如下:
http域添加
fastcgi_cache_path /xxxcache levels=1:2 keys_zone=cgicache:30m inactive=1d max_size=10g;
server域添加
location ~* ^/avatar.php?.*$ {
add_header X-Cache-CFC "$upstream_cache_status - $upstream_response_time";
fastcgi_temp_path /xxxtemp;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_cache cgicache;
fastcgi_cache_valid 301 302 1h;
fastcgi_cache_min_uses 1;
fastcgi_cache_use_stale error timeout invalid_header http_500;
fastcgi_cache_key $host$request_uri;
}
通過驗證,緩存文件生成成功,http請求換成miss、hit等狀態正確。
其它動態程序也可以使用此方法緩存。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。