• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • mod_cache_disk

    描述:用于 HTTP 缓存过滤器的基于磁盘的存储模块。
    状态:延期
    模块标识符:cache_disk_module
    源文件:mod_cache_disk.c

    摘要

    mod_cache_disk为mod_cache实现了基于磁盘的存储 manager。

    缓存响应的 headers 和 body 分别存储在磁盘上,在从缓存 URL 的 md5 哈希派生的目录结构中。

    可以同时存储多个内容协商响应,但是该模块尚不支持部分内容的缓存。

    通过在头文件中存储正文文件的设备和 inode numbers,无需锁定即可实现对头文件和正文 files 的原子缓存更新。这会产生副作用,即手动移动到缓存中的缓存条目将被忽略。

    提供htcacheclean工具是为了列出缓存的 URL,删除缓存的 URL,或者将磁盘缓存的大小保持在 and/or inode 限制范围内。该工具可以按需运行,也可以进行守护,以提供对目录大小的连续监视。

    注意:

    mod_cache_disk需要mod_cache的服务,必须在 mod_cache_disk 之前加载。

    注意:

    mod_cache_disk使用 sendfile feature 在平台支持时从缓存中提供 files,并在使用EnableSendfile时启用.file。但是,EnableSendfile会忽略EnableSendfile的 per-directory 和.htaccess configuration,因为当从缓存提供请求时,模块无法使用相应的设置。

    CacheDirLength 指令

    描述:子目录名称中的字符数
    句法:CacheDirLength length
    默认:CacheDirLength 2
    Context:server config,virtual host
    状态:延期
    模块:mod_cache_disk

    CacheDirLength指令设置缓存层次结构中每个子目录 name 的字符数。它可以与CacheDirLevels结合使用,以确定缓存层次结构的近似结构。

    CacheDirLength的高值与CacheDirLevels的低值相结合将导致相对平坦的层次结构,每个 level 都有大量子目录。

    CacheDirLevels*CacheDirLength的结果不得高于 20。

    CacheDirLevels 指令

    描述:缓存中子目录的级别数。
    句法:CacheDirLevels levels
    默认:CacheDirLevels 2
    Context:server config,virtual host
    状态:延期
    模块:mod_cache_disk

    CacheDirLevels指令设置缓存中的子目录级别数。缓存的数据将保存在CacheRoot目录下的许多目录级别。

    CacheDirLevels的高值与CacheDirLength的低值相结合将导致相对较深的层次结构,每个 level 都有少量子目录。

    CacheDirLevels* CacheDirLength的结果不得高于 20。

    CacheMaxFileSize 指令

    描述:要放入缓存中的文档的最大大小(以字节为单位)
    句法:CacheMaxFileSize bytes
    默认:CacheMaxFileSize 1000000
    Context:server config,virtual host,directory,.htaccess
    状态:延期
    模块:mod_cache_disk

    CacheMaxFileSize指令设置要考虑在缓存中存储的文档的最大大小(以字节为单位)。

    CacheMaxFileSize 64000
    

    CacheMinFileSize 指令

    描述:要放入缓存的文档的最小大小(以字节为单位)
    句法:CacheMinFileSize bytes
    默认:CacheMinFileSize 1
    Context:server config,virtual host,directory,.htaccess
    状态:延期
    模块:mod_cache_disk

    CacheMinFileSize指令设置要考虑在缓存中存储的文档的最小大小(以字节为单位)。

    CacheMinFileSize 64
    

    CacheReadSize 指令

    描述:在向下游发送数据之前要读取和缓存的文档的最小大小(以字节为单位)
    句法:CacheReadSize bytes
    默认:CacheReadSize 0
    Context:server config,virtual host,directory,.htaccess
    状态:延期
    模块:mod_cache_disk

    CacheReadSize指令设置在将数据发送到 client 之前从后端读取的最小数据量(以字节为单位)。默认值为零会导致读取任何大小的所有数据在到达时立即向下游传递给 client。将此值设置为更高的 value 会导致磁盘缓存在将结果发送到 client 之前至少缓冲此数量。当从反向代理缓存内容时,这可以改善 performance。

    该指令仅在将数据保存到缓存时生效,而不是从缓存提供的数据。

    CacheReadSize 102400
    

    CacheReadTime 指令

    描述:在向下游发送数据之前读取时应该经过的最小 time(以毫秒为单位)
    句法:CacheReadTime milliseconds
    默认:CacheReadTime 0
    Context:server config,virtual host,directory,.htaccess
    状态:延期
    模块:mod_cache_disk

    CacheReadTime指令设置在尝试向下游发送数据到 client 之前应该经过的最小经过时间 time。在 time 期间,数据将被缓冲,然后将结果发送到 client。当从反向代理缓存内容时,这可以改善 performance。

    默认值为零会禁用此选项。

    该指令仅在将数据保存到缓存时生效,而不是从缓存提供的数据。建议将此选项与CacheReadSize指令一起使用,以确保在数据到达速度超过预期时服务器不会过度缓冲。

    CacheReadTime 1000
    

    CacheRoot 指令

    描述:存储缓存 files 的目录根目录
    句法:CacheRoot directory
    Context:server config,virtual host
    状态:延期
    模块:mod_cache_disk

    CacheRoot指令定义磁盘上包含 cache files 的目录的 name。如果已将mod_cache_disk模块加载或编译到 Apache 服务器,则必须定义此指令。未能为CacheRoot提供 value 将导致 configuration 文件处理错误。CacheDirLevels和CacheDirLength指令定义指定根目录下的目录结构。

    CacheRoot c:/cacheroot
    

    上篇:mod_cache

    下篇:mod_cache_socache