nginx本地缓存模块ngx_slowfs_cache

  • A+
所属分类:Nginx
又拍云upyun

nginx proxy反向代理本身就支持缓存的,但是如果没有使用到nginx反向代理的话,就需要使用ngx_slowfs_cache模块来实现本地站点静态文件缓存,同时还为低速的存储设备创建快速缓存。

1. 安装ngx_slowfs_cache和ngx_cache_purge模块

2. 使用

说明:slowfs_cache_path和slowfs_temp_path需要在同一分区。 slowfs_cache_path指定缓存文件的目录级数,缓存区名称为fastcache,内存缓存空间为4096m,1天没有被访问的内容自动清除,硬盘缓存空间为20g。slowfs_cache_purge为清除缓存。
要注意location执行顺序。nginx purge更新缓存404错误 一例参见http://www.ttlsa.com/html/1084.html

3. 模块指令说明
slowfs_cache
语法:slowfs_cache zone_name
默认值:none
配置段:http, server, location
定义使用的缓存区。要与slowfs_cache_path指令定义的一致。

slowfs_cache_key
语法: slowfs_cache_key key
默认值: none
配置段: http, server, location
设置缓存的键

slowfs_cache_purge
语法: slowfs_cache_purge zone_name key
默认值: none
配置段: location
根据指定的key从缓存中清除也存在的缓存

slowfs_cache_path
语法: slowfs_cache_path path [levels] keys_zone=zone_name:zone_size [inactive] [max_size]
默认值: none
配置段: http
设置缓存区和缓存结构

slowfs_temp_path
语法: slowfs_temp_path path [level1] [level2] [level3]
默认值: /tmp 1 2
配置段: http
设置临时区。文件在移到缓存区时的临时存储地。

slowfs_cache_min_uses
语法: slowfs_cache_min_uses number
默认值: 1
配置段: http, server, location
设置文件被访问多少次后复制到缓存

slowfs_cache_valid
语法: slowfs_cache_valid [reply_code] time
默认值: none
配置段: http, server, location
设置缓存时间

slowfs_big_file_size
语法: slowfs_big_file_size size
默认值: 128k
配置段: http, server, location
设置大文件阀值,避免服务中断

$slowfs_cache_status变量:
表示缓存文件的可用性,值有MISS, HIT, EXPIRED

4. 测试

nginx
5. 清缓存

nginx
对于文件可以这么来做缓存。那么对于要经过php处理过的该怎么缓存呢? 请看下篇。
如需转载请注明出处:http://www.ttlsa.com/html/2390.html

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~
默北

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:16   其中:访客  14   博主  0   引用   2

    • liwj_netcom 0

      您好 楼主在吗 打扰您一下 我按照您的文档 添加安装了ngx_slowfs_cache(我以前已经装好nginx) ,nginx.conf里配置上slowfs_cache_path以后,检测nginx 就会报错 [root]# ./nginx -t
      Segmentation fault
      实在找不到原因,指望得到您的指导,非常感谢

        • 二蛋 1

          @liwj_netcom 同样的错误。求指点!

          • 二蛋 1

            @liwj_netcom 同样的错误,求指点!

              • 匿名 9

                @二蛋 没解决,据查 ngx_slowfs_cache好像就支持到nginx 1.3 ,后面在没更新,不知道是不是新版nginx已经不支持了… :evil:

            • 匿名 9

              :mrgreen: :mrgreen: :mrgreen: 去

              • […] 27. srcache_nginx+redis构建缓存系统 28. nginx模块nginx-http-footer-filter研究使用 29. nginx本地缓存模块ngx_slowfs_cache 30. nginx+fancy实现漂亮的索引目录 31. nginx secure_link下载防盗链 32. […]

                • 王冬青 9

                  楼主你好,向您请教一个问题。写好一个新的缓存算法,如何将它用nginx实现呢?是改写proxy_cache和slowfs_cache呢?还是加载第三方模块呢?

                    • TTLSA 9

                      @王冬青 这个得你自己考虑了。只要性能能提升,改写或者加载第三方模块都OK。

                        • 王冬青 9

                          @TTLSA 谢谢啊

                      • 谷歌搜索 1

                        Windows下面有没有这个模块呢?

                        • youy 9

                          自带的和slowfs相比之下有什么差别?

                            • 乐乐 9

                              @youy 自带的是反代。

                          • 来自外部的引用: 2

                            • nginx教程从入门到精通(ttlsa出品)
                            • 资源汇集:nginx教程从入门到精通 | linux运维小站–linux系统架构_服务器运维_Linux运维工程师工作手札